javascript - 在 JavaScript 中循环遍历数组的最快方法是什么?

标签 javascript performance loops

我从书上了解到,你应该这样写for循环:

for(var i=0, len=arr.length; i < len; i++){
    // blah blah
}

所以 arr.length 不会每次都计算。

其他人说编译器会对此做一些优化,所以你可以写:

for(var i=0; i < arr.length; i++){
    // blah blah
}

我只是想知道哪种方法在实践中是最好的?

最佳答案

使用大多数现代浏览器执行此测试后: https://jsben.ch/wY5fo

目前,最快的循环形式(在我看来也是最明显的语法)。

具有长度缓存的标准 for 循环

    var i = 0, len = myArray.length;
    while (i < len) {
        // your code
        i++
    }

我想说,这绝对是我为 JavaScript 引擎开发人员鼓掌的一个案例。运行时应该针对清晰而不是聪明进行优化。

关于javascript - 在 JavaScript 中循环遍历数组的最快方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5349425/

相关文章:

sql - 大小写敏感会影响oracle DB中的SQL解析

php - 如何减少循环时间

php - 使用meta_query进行精确的日期范围搜索

javascript - jquery 隐藏的 div 删除需要的字段

javascript - 为什么循环下面的语句在循环终止之前执行

android - 我如何找到在Android上的SQLite引擎中花费了多少时间?

python - 创建继续嵌套 for 循环

javascript - 如何根据屏幕尺寸调整图像大小

javascript - 滚动然后固定到 html 中的顶部标题

java - 前两个输入数字的总和