Diferença entre Matriz (n) e Matriz (n) .fill?
Percebi que se eu fizer:
Array(n).map(() => console.log('test'))
Não recebo nada impresso.
No entanto, se eu fizer:
Array(n).fill().map(() => console.log('test'))
eu recebotest
impresson
vezes.
Por que esse é o caso? Se eu fizerArray(n).length
eu voltein
.
Percebo no REPL queArray(5)
retorna:
[ , , , , ]
Enquanto queArray(5).fill()
retorna:
[ undefined, undefined, undefined, undefined, undefined ]
Em ambos os casos,typeof
qualquer elemento na matriz=== undefined
.
Então o que está acontecendo?