Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. JavaScript-Referenz
  4. Eingebaute Standardobjekte
  5. Array
  6. pop()

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.

View in EnglishAlways switch to English

Array.prototype.pop()

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⁩.

Diepop()-Methode vonArray-Instanzen entfernt dasletzte Element aus einem Array und gibt dieses Element zurück. Diese Methode ändert die Länge des Arrays.

Probieren Sie es aus

const plants = ["broccoli", "cauliflower", "cabbage", "kale", "tomato"];console.log(plants.pop());// Expected output: "tomato"console.log(plants);// Expected output: Array ["broccoli", "cauliflower", "cabbage", "kale"]plants.pop();console.log(plants);// Expected output: Array ["broccoli", "cauliflower", "cabbage"]

Syntax

js
pop()

Parameter

Keine.

Rückgabewert

Das entfernte Element aus dem Array;undefined, wenn das Array leer ist.

Beschreibung

Diepop()-Methode entfernt das letzte Element aus einem Array und gibt diesen Wert an den Aufrufer zurück. Wenn Siepop() auf ein leeres Array aufrufen, gibt esundefined zurück.

Array.prototype.shift() hat ein ähnliches Verhalten wiepop(), wird aber auf das erste Element eines Arrays angewendet.

Diepop()-Methode ist eine verändernde Methode. Sie ändert die Länge und den Inhalt vonthis. Falls Sie möchten, dass der Wert vonthis gleich bleibt, aber ein neues Array mit dem letzten entfernten Element zurückgeben wollen, können Sie stattdessenarr.slice(0, -1) verwenden.

Diepop()-Methode istgenerisch. Sie erwartet nur, dass derthis-Wert einelength-Eigenschaft und integer-indizierte Eigenschaften hat. Obwohl Strings auch array-ähnlich sind, ist diese Methode nicht geeignet, auf ihnen angewendet zu werden, da Strings unveränderlich sind.

Beispiele

Entfernen des letzten Elements eines Arrays

Der folgende Code erstellt dasmyFish-Array mit vier Elementen und entfernt dann das letzte Element.

js
const myFish = ["angel", "clown", "mandarin", "sturgeon"];const popped = myFish.pop();console.log(myFish); // ['angel', 'clown', 'mandarin' ]console.log(popped); // 'sturgeon'

Aufrufen von pop() auf Nicht-Array-Objekten

Diepop()-Methode liest dielength-Eigenschaft vonthis. Ist dienormalisierte Länge 0, wirdlength erneut auf0 gesetzt (wobei sie vorher negativ oderundefined sein könnte). Andernfalls wird die Eigenschaft beilength - 1 zurückgegeben undgelöscht.

js
const arrayLike = {  length: 3,  unrelated: "foo",  2: 4,};console.log(Array.prototype.pop.call(arrayLike));// 4console.log(arrayLike);// { length: 2, unrelated: 'foo' }const plainObj = {};// There's no length property, so the length is 0Array.prototype.pop.call(plainObj);console.log(plainObj);// { length: 0 }

Verwenden eines Objekts in array-ähnlicher Weise

push undpop sind absichtlich generisch, und wir können uns dies zunutze machen — wie das folgende Beispiel zeigt.

Beachten Sie, dass wir in diesem Beispiel kein Array erstellen, um eine Sammlung von Objekten zu speichern. Stattdessen speichern wir die Sammlung direkt im Objekt und verwendencall aufArray.prototype.push undArray.prototype.pop, um diese Methoden zu überlisten und vorzutäuschen, dass wir es mit einem Array zu tun haben.

js
const collection = {  length: 0,  addElements(...elements) {    // obj.length will be incremented automatically    // every time an element is added.    // Returning what push returns; that is    // the new value of length property.    return [].push.call(this, ...elements);  },  removeElement() {    // obj.length will be decremented automatically    // every time an element is removed.    // Returning what pop returns; that is    // the removed element.    return [].pop.call(this);  },};collection.addElements(10, 20, 30);console.log(collection.length); // 3collection.removeElement();console.log(collection.length); // 2

Spezifikationen

Specification
ECMAScript® 2026 Language Specification
# sec-array.prototype.pop

Browser-Kompatibilität

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2025 Movatter.jp