Javascript数组.slice()与数组.slice(0)的区别

5

之前我在某处看到过一个说法,即Array.slice(0)比Array.slice()更快。不幸的是,我现在找不到那个来源了。所以这是否可能?Array.slice(0)和Array.slice()之间有什么区别吗?


如果没有提供参数,slice 将默认为 0 - ibrahim mahrir
3个回答

9

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

begin 可选

从中开始提取的零基索引。可以使用负索引表示距序列末尾的偏移量。

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

更多信息:链接


4

slice是这样的:

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

唯一的区别在于是否评估行start = 0!因此,评估时间的唯一变化将是分配的时间,与代码的其余部分相比不会太昂贵!

2
如果您不向Array.slice()函数传递任何参数,则默认状态将设置为0
如果未定义begin,则slice从索引0开始。 Array.prototype.slice() MDN.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接