今天看视频见到别人遍历类数组使用Array.from(likeArray)方法,于是想起了Array.prototype.forEach.call();这两者在项目中选择肯定是性能哪个好选择哪个;
我们写一段测试代码
var linkArr = {0:'a',1:'b',2:'c', length:3};
console.time('global');
for(var i=0;i<10000;i++){
Array.from(linkArr).forEach((item)=>{
let el = item;
})
}
console.timeEnd('global'); // 运行时间:global: 11.6630859375ms
var linkArr = {0:'a',1:'b',2:'c', length:3};
console.time('global');
for(var i=0;i<10000;i++){
Array.prototype.forEach.call(this, (item) => {
let el = item;
})
}
console.timeEnd('global'); // 运行时间:global: 6.721923828125ms
通过上面对比发现使用call方法明显比from()方法更优。
本文通过测试代码对比了Array.from方法与Array.prototype.forEach.call方法在遍历类数组时的性能差异,实验证明后者在相同条件下运行速度更快。
4159

被折叠的 条评论
为什么被折叠?



