方法有:
- 普通for循环,优化普通for循环
- forEach
- forEach变种
- forin循环
- map遍历
- forof遍历(需要ES6支持)
for循环优化:
for(j = 0,len=arr.length; j < len; j++) {
}
使用临时变量,将长度缓存起来,避免重复获取数组长度,当数组较大时优化效果才会比较明显。
这种方法基本上是所有循环遍历方法中性能最高的一种
forEach变种
Array.prototype.forEach.call(arr,function(el){
});
由于foreach是Array型自带的,对于一些非这种类型的,无法直接使用(如NodeList),所以才有了这个变种,使用这个变种可以让类似的数组拥有foreach功能。
实际性能要比普通foreach弱
性能对比
for优化最快
forin最慢