<分区>
考虑以下 JavaScript 代码(在节点 REPL 中):
> let a = new Array(10)
undefined
> a
[ <10 empty items> ]
> a.map(e => 1)
[ <10 empty items> ]
> let b = new Array(10).fill(undefined)
undefined
> b
[ undefined,
undefined,
undefined,
undefined,
undefined,
undefined,
undefined,
undefined,
undefined,
undefined ]
> b.map(e => 1)
[ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
>
当我创建一个空数组时,我会得到“空项”,其行为似乎与 undefined
不同。有人可以解释一下有什么区别吗?