在 JavaScript 中循环遍历数组的最快方法是什么?
JavaScript 有多种循环可用于执行迭代。 JavaScript 支持以下循环及其语法。
for 循环: for 循环包括变量初始化、变量求值条件和确定循环终止的表达式。它执行固定次数的迭代,因此必须在循环迭代次数已知的场景中使用。
对于常量,我们有以下类型的语法:
// for loop that performs 10k iterations
for (let i = 0; i < 10000; i++) {
// Statements
}
如果是数组:
// Loop that runs up til the length
// of the array
for (i = 0; i < array.length; i++) {
// Statements
}
while 循环: while 循环在循环开始之前在外部执行初始化,然后验证条件,然后计算表达式。 while 循环继续执行,直到满足条件。
在数组的情况下循环,请遵循以下语法:
// Initialization
let x = 0;
// Condition checking
while (x <= arr.length+1) {
// Increment
x += 1;
}
.forEach() 循环:数组的每个元素都受制于执行某些操作或任务的函数。该函数被指定为 JavaScript 中 forEach 方法的参数。它执行需要功能代码的高效任务。它基本上是一个高度依赖于内部执行的操作的回调函数。
// Evaluation is performed element
// wise of the array
let arr = []
arr.forEach((ele) => {
// Statements
})
for...of 循环:这是 for 循环的新版本。此循环需要为数组的每个元素分配一个临时名称。在小数据集的情况下它运行得非常快。与传统的 for 循环相比,它更具可读性。它对 JavaScript 的内置迭代对象(如 String、Map、Set 和 Array)执行迭代。
for (let val of arr) {
// Statements
}
JavaScript 中可用循环的性能比较:
- 在循环多次迭代的情况下,并且数组的大小太大,for循环是元素迭代最快的方法。
- While 循环在大型数组的情况下执行有效的缩放。
- 在功能代码的情况下,每个循环在优化时间的情况下表现更好。
- 在较小的迭代和较小的数据集或操作(偶尔使用)的情况下,forEach() 以更快的速度执行。
- for 循环的优化版本是模拟长度缓存,即存储数组长度以防止其重复计算。
因此,具有长度缓存替代方案的 for 循环主要是首选。