Разница между массивом (n) и массивом (n) .fill?
Я заметил, что если я сделаю:
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
.
Так, что происходит?