Array.map mit neuem Array-Konstruktor verwenden
Ich habe versucht, @ zu verwendnew Array()
Konstruktor mitmap
, um einen einzeiligen Code zu erstellen, der eine Liste von Elementen erstellt. Etwas wie das
let arr = new Array(12).map( (el, i) => {
console.log('This is never called');
return i + 1;
});
Lesen docs, das Verhalten macht Sinn.
rundsätzlich heißt es in Dokumenten, dass der Rückruf von map auch für deklarierte undefinierte Werte im Array ausgeführt wird, jedoch nicht zum Beispiel, wenn leere Arrays wie der vorherige Code erstellt werde
So sollte das funktionieren:
var arr = new Array(12);
for(let i = 0; i < arr.length ; i++){
arr[i] = undefined;
}
let list = arr.map( (e, i) => {
console.log(i + 1);
return i + 1;
});
Also, wir können auch so etwas machen:
let newArray = (length) => {
let myArray = new Array(length);
for(let i = 0; i < length; i++) myArray[i] = undefined;
return myArray;
};
console.log( newArray(12).map( (el, i) => i + 1 ) );
So meine Frage. Gibt es eine bessere / schönere Möglichkeit, dies mit der Kartenfunktion zu tun?
Danke im Voraus