Heim >Web-Frontend >js-Tutorial >Wie kann ich ein JavaScript-Array effizient mit einem anderen Array erweitern?

Wie kann ich ein JavaScript-Array effizient mit einem anderen Array erweitern?

Susan Sarandon
Susan SarandonOriginal
2024-11-19 05:48:02283Durchsuche

How Can I Efficiently Extend a JavaScript Array with Another Array?

Erweitern eines JavaScript-Arrays mit einem anderen Array

Das Erweitern eines vorhandenen JavaScript-Arrays mit einem anderen Array ist kein direkter Vorgang. Es gibt jedoch effiziente Möglichkeiten, dies zu erreichen, ohne ein neues Array zu erstellen.

Push-Methode mit Spread-Operator (ES6)

Die .push-Methode kann mehrere Argumente akzeptieren. Mit dem Spread-Operator können wir alle Elemente des zweiten Arrays als Argumente an .push übergeben und so das erste Array erweitern:

a.push(...b)

Für Browser, die ES6 nicht unterstützen, können wir stattdessen .apply verwenden :

a.push.apply(a, b)

Alternativ, der Klarheit halber:

Array.prototype.push.apply(a,b)

Schleifenbasiert Technik

Ein schleifenbasierter Ansatz wird empfohlen, wenn das zweite Array (b) groß ist, da die vorherigen Methoden Stapelüberlauffehler verursachen können. Der folgende Code führt die Erweiterungsoperation aus:

for (var i = 0; i < b.length; i++) {
  a.push(b[i]);
}

Weitere Überlegungen

Beachten Sie, dass beide Ansätze effizient funktionieren, wenn a deutlich größer als b ist. Wenn b jedoch eine große Anzahl von Elementen enthält, sollte die schleifenbasierte Technik verwendet werden, um Stapelüberlauffehler zu vermeiden.

Das obige ist der detaillierte Inhalt vonWie kann ich ein JavaScript-Array effizient mit einem anderen Array erweitern?. 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