Heim >Web-Frontend >js-Tutorial >Warum gibt Array.prototype.Push die neue Array-Länge zurück?

Warum gibt Array.prototype.Push die neue Array-Länge zurück?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-22 11:54:02600Durchsuche

Why Does Array.prototype.Push Return the New Array Length?

Warum gibt Array.prototype.push die neue Array-Länge zurück?

In JavaScript ermöglicht die Methode Array.prototype.push bequem das Anhängen Elemente an das Ende eines Arrays. Seine Besonderheit liegt jedoch darin, die neue Array-Länge anstelle von etwas scheinbar Wertvollerem zurückzugeben.

Diese Entscheidung geht auf die Einführung von Push in JavaScript 1.2 im Jahr 1997 zurück. Inspiriert von den Array-Manipulationsfunktionen von Perl, JS1.2 Push gab zunächst das zuletzt gepushte Element zurück und befolgte dabei die Konventionen von Perl 4.

Mit der Weiterentwicklung von JavaScript zu JS1.3 kam es zu einer erheblichen Änderung. Die Push-Funktion wurde geändert, um der Perl 5-Konvention zu folgen, die die Rückgabe der neuen Array-Länge vorschrieb. Diese Entscheidung lässt sich auf den ursprünglichen jsarray.c-Quellcode zurückführen, in dem darauf hingewiesen wurde, dass die Funktion im Fall von JavaScript 1.2 das zuletzt übertragene Element zurückgeben sollte, während sie bei anderen Versionen die neue Länge zurückgeben sollte.

Es ist erwähnenswert, dass diese scheinbar belanglose Entscheidung erhebliche Auswirkungen hat. Durch die Rückgabe der neuen Länge ermöglicht push eine einfache Verkettung, sodass nachfolgende Vorgänge auf dem geänderten Array ausgeführt werden können, ohne dass es neu zugewiesen werden muss. Beispielsweise könnte man Arrays verketten und sie alle in einer einzigen Codezeile sortieren:

const result = [1, 2].push(3).push(4).sort();
console.log(result); // Output: [1, 2, 3, 4]

Darüber hinaus bietet die Rückgabe der neuen Länge eine konsistente Schnittstelle für alle Array-Manipulationsmethoden, wie z. B. Pop und Shift, die Gibt außerdem die geänderte Länge und nicht das entfernte Element zurück. Diese Einheitlichkeit vereinfacht die Nutzung und reduziert den kognitiven Aufwand für Entwickler.

Das obige ist der detaillierte Inhalt vonWarum gibt Array.prototype.Push die neue Array-Länge zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn