【】for、forEach、map数组遍历性能比较

2021-05-19  本文已影响0人  小蜜蜂_1d30

【js】for、forEach、map数组遍历性能比较

   结果:遍历时间上for循环遍历<for...of遍历<forEach遍历<for...in遍历<map遍历

背景

常用数组遍历方式有很多,最经典的for循环:   for(var i=0;i<arr.length;i++){}

再者有了for...in   for(var i in arr){}

forEach    arr.forEach(function(i){})

map   arr.map(function(i){})

然后ES6有了更为方便的for...of              for(let i of arr){}

*为何for… in会慢?

因为for...in语法是第一个能够迭代对象键的javaScript语句,循环对象键盘({})与在数组(【】)上循环不一样,引擎会执行一些额外的工作来跟踪已经迭代的属性。

因此可以大致得出以下几点:

1.数据量大时,遍历性能的差距尤为明显;

2.for系遍历总体性能好于forEach、map等数组方法

3.你大爷毕竟还是你大爷,性能最佳的还是经典的for循环遍历

4.forEach性能优于map

5.for...of要兼容低于版本设备的话还是算了

上一篇 下一篇

猜你喜欢

热点阅读