Javascript Array.slice()vs Array.slice(0)

时间:2017-04-04 13:14:44

标签: javascript slice

前段时间我在某处看到了Array.slice(0)比Array.slice()更快的事情。不幸的是现在我无法找到这个来源。那可能吗? Array.slice(0)和Array.slice()有什么区别?

3 个答案:

答案 0 :(得分:5)

没有区别,因为如果您没有为begin方法提供任何参数,则0默认会分配给Array.slice()

  

开始 Optional

     

开始提取的从零开始的索引。一个   可以使用负指数,表示距离结尾的偏移量   序列

     

如果未定义begin,则切片从索引0开始。

了解更多信息: link

答案 1 :(得分:3)

slice是这样的:

function slice(start) {
    if( /* start is not valid */ ) {
        start = 0;
    }
    // ...
}

唯一的不同之处在于评估了行start = 0是否正确!因此评估时间的唯一变化就是分配的成本,与其他代码相比,成本并不高!

答案 2 :(得分:2)

如果您不将任何参数传递给Array.slice()函数,则默认状态将设置为0

如果未定义begin,则切片从索引0开始。

Array.prototype.slice() MDN.