Array.prototype.unshift()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itโs been available across browsers since โจJuli 2015โฉ.
Die unshift()
Methode von Array
Instanzen fรผgt die angegebenen Elemente am Anfang eines Arrays hinzu und gibt die neue Lรคnge des Arrays zurรผck.
Probieren Sie es aus
const array = [1, 2, 3];
console.log(array.unshift(4, 5));
// Expected output: 5
console.log(array);
// Expected output: Array [4, 5, 1, 2, 3]
Syntax
unshift()
unshift(element1)
unshift(element1, element2)
unshift(element1, element2, /* โฆ, */ elementN)
Parameter
element1
, โฆ,elementN
-
Die Elemente, die dem Anfang des
arr
hinzugefรผgt werden sollen.
Rรผckgabewert
Die neue length
Eigenschaft des Objekts, auf das die Methode angewendet wurde.
Beschreibung
Die unshift()
Methode fรผgt die angegebenen Werte am Anfang eines array-รคhnlichen Objekts ein.
Array.prototype.push()
รคhnelt dem Verhalten von unshift()
, aber es wird am Ende eines Arrays angewendet.
Bitte beachten Sie, dass, wenn mehrere Elemente als Parameter รผbergeben werden, sie als Block am Anfang des Objekts in der exakt gleichen Reihenfolge eingefรผgt werden, in der sie als Parameter รผbergeben wurden. Daher ergibt ein einmaliges Aufrufen von unshift()
mit n
Argumenten nicht dasselbe Ergebnis wie n
mal Aufrufen mit 1 Argument (zum Beispiel in einer Schleife).
Siehe Beispiel:
let arr = [4, 5, 6];
arr.unshift(1, 2, 3);
console.log(arr);
// [1, 2, 3, 4, 5, 6]
arr = [4, 5, 6]; // resetting the array
arr.unshift(1);
arr.unshift(2);
arr.unshift(3);
console.log(arr);
// [3, 2, 1, 4, 5, 6]
Die unshift()
Methode ist generisch. Sie erwartet lediglich, dass der this
Wert eine length
Eigenschaft und integer-integrierte Eigenschaften hat. Obwohl Zeichenfolgen auch array-รคhnlich sind, ist diese Methode nicht geeignet, auf sie angewendet zu werden, da Zeichenfolgen unverรคnderlich sind.
Beispiele
Verwendung von unshift()
const arr = [1, 2];
arr.unshift(0); // result of the call is 3, which is the new array length
// arr is [0, 1, 2]
arr.unshift(-2, -1); // the new array length is 5
// arr is [-2, -1, 0, 1, 2]
arr.unshift([-4, -3]); // the new array length is 6
// arr is [[-4, -3], -2, -1, 0, 1, 2]
arr.unshift([-7, -6], [-5]); // the new array length is 8
// arr is [ [-7, -6], [-5], [-4, -3], -2, -1, 0, 1, 2 ]
Aufrufen von unshift() auf nicht-Array Objekten
Die unshift()
Methode liest die length
Eigenschaft von this
. Sie verschiebt alle Indizes im Bereich von 0
bis length - 1
nach rechts um die Anzahl der Argumente (indem ihre Werte um diese Zahl erhรถht werden). Dann setzt sie jeden Index beginnend bei 0
mit den an unshift()
รผbergebenen Argumenten. 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.unshift.call(arrayLike, 1, 2);
console.log(arrayLike);
// { '0': 1, '1': 2, '4': 4, length: 5, unrelated: 'foo' }
const plainObj = {};
// There's no length property, so the length is 0
Array.prototype.unshift.call(plainObj, 1, 2);
console.log(plainObj);
// { '0': 1, '1': 2, length: 2 }
Spezifikationen
Specification |
---|
ECMAScriptยฎ 2026 Language Specification # sec-array.prototype.unshift |
Browser-Kompatibilitรคt
Loadingโฆ