A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Array/push below:

Array.prototype.push() - JavaScript | MDN

Array.prototype.push()

Baseline Widely available

Die push() Methode von Array Instanzen fügt die angegebenen Elemente am Ende eines Arrays hinzu und gibt die neue Länge des Arrays zurück.

Probieren Sie es aus
const animals = ["pigs", "goats", "sheep"];

const count = animals.push("cows");
console.log(count);
// Expected output: 4
console.log(animals);
// Expected output: Array ["pigs", "goats", "sheep", "cows"]

animals.push("chickens", "cats", "dogs");
console.log(animals);
// Expected output: Array ["pigs", "goats", "sheep", "cows", "chickens", "cats", "dogs"]
Syntax
push()
push(element1)
push(element1, element2)
push(element1, element2, /* …, */ elementN)
Parameter
element1, …, elementN

Das bzw. die Elemente, die am Ende des Arrays hinzugefügt werden sollen.

Rückgabewert

Die neue Länge Eigenschaft des Objekts, auf dem die Methode aufgerufen wurde.

Beschreibung

Die push() Methode fügt Werte zu einem Array hinzu.

Array.prototype.unshift() hat ein ähnliches Verhalten wie push(), wird jedoch auf den Anfang eines Arrays angewendet.

Die push() Methode ist eine mutierende Methode. Sie ändert die Länge und den Inhalt von this. Falls Sie möchten, dass der Wert von this gleich bleibt, aber ein neues Array mit Elementen am Ende zurückgegeben werden soll, können Sie stattdessen arr.concat([element0, element1, /* ... ,*/ elementN]) verwenden. Beachten Sie, dass die Elemente in ein zusätzliches Array eingepackt werden — andernfalls, wenn das Element selbst ein Array ist, würde es aufgrund des Verhaltens von concat() verteilt statt als einzelnes Element angehängt werden.

Die push() Methode ist generisch. Sie erwartet nur, dass der this Wert eine length Eigenschaft und Integer-Indexierte Eigenschaften hat. Obwohl Strings auch Array-ähnlich sind, ist diese Methode nicht dafür geeignet, auf ihnen angewendet zu werden, da Strings unveränderlich sind.

Beispiele Hinzufügen von Elementen zu einem Array

Der folgende Code erstellt das sports Array, das zwei Elemente enthält, und fügt dann zwei Elemente hinzu. Die total Variable enthält die neue Länge des Arrays.

const sports = ["soccer", "baseball"];
const total = sports.push("football", "swimming");

console.log(sports); // ['soccer', 'baseball', 'football', 'swimming']
console.log(total); // 4
Zusammenführen von zwei Arrays

Dieses Beispiel verwendet die Spread-Syntax, um alle Elemente eines zweiten Arrays in das erste zu übernehmen.

const vegetables = ["parsnip", "potato"];
const moreVegs = ["celery", "beetroot"];

// Merge the second array into the first one
vegetables.push(...moreVegs);

console.log(vegetables); // ['parsnip', 'potato', 'celery', 'beetroot']

Das Zusammenführen von zwei Arrays kann auch mit der concat() Methode durchgeführt werden.

Aufruf von push() auf Nicht-Array-Objekten

Die push() Methode liest die length Eigenschaft von this. Sie setzt dann jeden Index von this, beginnend bei length, mit den an push() übergebenen Argumenten und schließlich setzt sie die length auf die vorherige Länge plus die Anzahl der hinzugefügten Elemente.

const arrayLike = {
  length: 3,
  unrelated: "foo",
  2: 4,
};
Array.prototype.push.call(arrayLike, 1, 2);
console.log(arrayLike);
// { '2': 4, '3': 1, '4': 2, length: 5, unrelated: 'foo' }

const plainObj = {};
// There's no length property, so the length is 0
Array.prototype.push.call(plainObj, 1, 2);
console.log(plainObj);
// { '0': 1, '1': 2, length: 2 }
Verwenden eines Objekts auf Array-ähnliche Weise

Wie oben erwähnt, ist push absichtlich generisch, und wir können das zu unserem Vorteil nutzen. Array.prototype.push kann bei einem Objekt genauso gut funktionieren, wie dieses Beispiel zeigt.

Beachten Sie, dass wir kein Array erstellen, um eine Sammlung von Objekten zu speichern. Stattdessen speichern wir die Sammlung direkt auf dem Objekt und verwenden call auf Array.prototype.push, um die Methode zu täuschen, dass wir es mit einem Array zu tun haben — und es funktioniert einfach, dank der Art und Weise, wie JavaScript es uns ermöglicht, den Ausführungskontext beliebig festzulegen.

const obj = {
  length: 0,

  addElem(elem) {
    // obj.length is automatically incremented
    // every time an element is added.
    [].push.call(this, elem);
  },
};

// Let's add some empty objects just to illustrate.
obj.addElem({});
obj.addElem({});
console.log(obj.length); // 2

Beachten Sie, dass, obwohl obj kein Array ist, die Methode push erfolgreich die length Eigenschaft von obj inkrementiert hat, als hätten wir es mit einem echten Array zu tun gehabt.

Spezifikationen Browser-Kompatibilität Siehe auch

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4