JS遍历方法分析
JS遍历方法
JS数组遍历,基本就是for,for in,forEach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比
1.普通for循环
1 |
|
2.优化版for循环
1 |
|
这种方法基本上是所有循环遍历方法中性能最高的一种
弱化版for循环
1 | for(j = 0; arr[j]!=null; j++) { |
实际上,这种方法的性能要远远小于普通for循环
forEach循环
1 | arr.forEach(function(e){ |
forEach变种
1 | Array.prototype.forEach.call(arr,function(el){ |
实际性能要比普通foreach弱
for in循环
1 | for(j in arr) { |
它的效率是最低的
map遍历
1 | arr.map(function(n){ |
for of遍历(需要ES6支持)
1 | for(let value of arr) { |
各种遍历方式的性能对比
上述列举了几种方式都有一一做过对比分析,基本上可以得出的结论是:
普通for循环才是最优雅的
(PS:以上所有的代码都只是进行空的循环,没有再循环内部执行代码,仅仅是分析各自循环的时间而已)
性能对比截图
以下截图中的数据是,在chrome (支持es6)中运行了100次后得出的结论(每次运行10次,一共10个循环,得到的分析结果)
以下截图数据是,在chrome (支持es6)中运行了1000次后得出的结论(每次运行100次,一共10个循环,得到的分析结果)
评论
LivereValine