3

Array.prototype.forEach 的文档说:

forEach 为数组的每个元素执行一次提供的回调,并分配一个值。
对于已删除或已初始化为未定义的索引,不会调用它。

为什么?

4

2 回答 2

3

看看我运行的这个控制台“实验”:

萤火虫控制台

图片链接

您可以清楚地看到 Array.forEach不会跳过undefined (这里的关键)。只有undefined在删除时才会被跳过。

于 2013-11-10T20:56:25.270 回答
0

在除 Mozilla Firefox 之外的所有浏览器中,forEach 函数会跳过数组中值为 undefined 的元素。该函数跳过所有浏览器中未分配的元素。

来自:https ://msdn.microsoft.com/en-us/library/bb397509.aspx

于 2016-03-15T13:51:04.343 回答