js--展开运算符的性能提升_i++


var arr = [];
var item = 0;
for (let i = 1; i < 100; i++) {
arr.push(i)
}


function pushTail(item, arr = []) {
return [...arr, item]
}

function pushHead(item, arr = []) {

return [item, ...arr]

}


pushTail(0, arr)//23ms ...合并数组元素,前置合并效果性能更高--针对chrome浏览器



pushHead(0, arr)//30ms

  • Chrome中的V8引擎在解析js的时候,对展开运算符进行了新的优化,可以称之为快速路径优化
  • 快速路径优化会省去迭代对象的创建,也不必每一次都调用iterator的next()方法
  • 它只为最终运行结果分配一次内存,从而性能提高。