Reinhard: .map() auf leeres Array

Beitrag lesen

Hey,

ich habe da mal eine Frage zu folgender Situation:

var arr = Array(5).map(function() {
    return Math.floor(Math.random() * (10 - 1 + 1)) + 1;
});

Ich würde gerne - in einem Abwasch - ein Array mit einer bestimmten Länge erzeugen und gleich mit Zufallszahlen bestücken. Eigenartigerweise wird die map-Funktion kein einziges Mal aufgerufen. Mit .reduce() geht es ebensowenig - mit .fill() aber schon:

var arr = Array(5).fill(0).map(function() {
    return Math.floor(Math.random() * (10 - 1 + 1)) + 1;
});

Kann mir jemand erklären, warum das so ist?

Reinhard