道格拉斯·克罗克福德(Douglas Crockford)在JavaScript:The Good Parts中指出,“移位通常比流行音乐要慢得多”。 jsPerf confirms this。有谁知道为什么会这样吗?从简单的角度来看,他们似乎在做同样的事情。

最佳答案

要删除返回的项目而不重新寻址数组并使所有对该项目的引用无效,shift()要求移动整个数组。 pop()可以简单地从其长度中减去1。

07-28 08:51