【发布时间】:2016-05-03 00:17:51
【问题描述】:
我注意到如果我这样做:
Array(n).map(() => console.log('test'))
我什么也没打印出来。
但是如果我这样做:
Array(n).fill().map(() => console.log('test'))
我得到test 打印出n 次。
为什么会这样?如果我这样做Array(n).length,我会返回n。
我在 REPL 中注意到 Array(5) 返回:
[ , , , , ]
而Array(5).fill() 返回:
[ undefined, undefined, undefined, undefined, undefined ]
在这两种情况下,typeof 数组中的任何元素 === undefined。
那么,发生了什么事?
【问题讨论】:
标签: javascript arrays