• js--展开运算符的性能提升_js--展开运算符的性能提升

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()方法

  • 它只为最终运行结果分配一次内存,从而性能提高。