我对结果感到困惑map
ping 使用创建的数组new
:
function returnsFourteen() {
return 14;
}
var a = new Array(4);
> [undefined x 4] in Chrome, [, , , ,] in Firefox
a.map(returnsFourteen);
> [undefined x 4] in Chrome, [, , , ,] in Firefox
var b = [undefined, undefined, undefined, undefined];
> [undefined, undefined, undefined, undefined]
b.map(returnsFourteen);
> [14, 14, 14, 14]
我期望a.map(returnsFourteen)
回来[14, 14, 14, 14]
(与b.map(returnsFourteen)
,因为根据有关数组的 MDN 页面 https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array:
如果传递给 Array 构造函数的唯一参数是整数
0 到 2**32-1(含)之间,创建一个新的 JavaScript 数组
与该数量的元素。
我的意思是a
应该有 4 个元素。
我在这里缺少什么?