Heim >Web-Frontend >js-Tutorial >Warum scheint „map' bei Arrays, die mit „new Array(count)' erstellt wurden, fehlzuschlagen?
In bestimmten Browsern kann das Erstellen eines Arrays über „new Array(count)“ und der Versuch, die Map-Methode darauf anzuwenden, zu Ergebnissen führen unerwartete Ergebnisse. Es ist wichtig, den Mechanismus hinter diesem Verhalten zu verstehen.
new Array(count) initialisiert ein Array mit der Anzahl der Elemente, die alle auf undefiniert initialisiert sind. Auch wenn das Array leer zu sein scheint, enthält es in Wirklichkeit eine Reihe undefinierter Werte.
Wenn die Map-Methode auf ein Array angewendet wird, erstellt sie ein neues Array, indem sie eine bestimmte Funktion auf jedes Element im Array anwendet ursprüngliches Array. Im bereitgestellten Beispiel gibt die Funktion einfach 0 zurück.
Beim Aufruf für ein Array, das mit new Array(count) initialisiert wurde, scheint die Map-Methode keine Wirkung zu haben, da sie ein Array undefinierter Werte zurückgibt. Dies liegt daran, dass die Map-Funktion auf die undefinierten Werte im ursprünglichen Array angewendet wird, was zu einem neuen Array undefinierter Werte führt.
Um dieses Problem zu beheben, kann man die Array-Elemente sogar mit einem bestimmten Wert initialisieren undefiniert, mit der Methode Array.prototype.fill() vor dem Versuch, die Karte anzuwenden.
Das obige ist der detaillierte Inhalt vonWarum scheint „map' bei Arrays, die mit „new Array(count)' erstellt wurden, fehlzuschlagen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!