Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. Référence JavaScript
  4. Objets natifs standards
  5. Array
  6. pop()

Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in EnglishAlways switch to English

Array : méthode pop()

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis ⁨juillet 2015⁩.

La méthodepop() des instances deArray supprime ledernier élément d'un tableau et retourne cet élément. Cette méthode modifie la longueur du tableau.

Exemple interactif

const plants = ["brocoli", "chou-fleur", "chou", "chou frisé", "tomate"];console.log(plants.pop());// Résultat attendu : "tomate"console.log(plants);// Résultat attendu : Array ["brocoli", "chou-fleur", "chou", "chou frisé"]plants.pop();console.log(plants);// Résultat attendu : Array ["brocoli", "chou-fleur", "chou"]

Syntaxe

js
pop()

Paramètres

Aucun.

Valeur de retour

L'élément retiré du tableau ;undefined si le tableau est vide.

Description

La méthodepop() supprime le dernier élément d'un tableau et retourne cette valeur. Si vous appelezpop() sur un tableau vide, elle retourneundefined.

La méthodeArray.prototype.shift() possède un comportement analogue àpop(), mais appliqué au premier élément d'un tableau.

La méthodepop() est une méthode mutatrice. Elle modifie la longueur et le contenu dethis. Si vous souhaitez que la valeur dethis reste identique mais retourner un nouveau tableau sans le dernier élément, vous pouvez utiliserarr.slice(0, -1).

La méthodepop() estgénérique. Elle attend uniquement que la valeur dethis possède une propriétélength et des propriétés indexées par des entiers. Bien que les chaînes de caractères ressemblent aussi à des tableaux, cette méthode ne peut pas leur être appliquée car elles sont immuables.

Exemples

Supprimer le dernier élément d'un tableau

Le code suivant crée le tableaumesPoissons qui contient quatre éléments puis supprime le dernier élément.

js
const mesPoissons = ["ange", "clown", "mandarin", "esturgeon"];const retire = mesPoissons.pop();console.log(mesPoissons); // ['ange', 'clown', 'mandarin']console.log(retire); // 'esturgeon'

Appelerpop() sur un objet qui n'est pas un tableau

La méthodepop() lit la propriétélength dethis. Si lalongueur normalisée est 0,length est à nouveau définie à0 (elle peut être négative ouundefined auparavant). Sinon, la propriété àlength - 1 est retournée etsupprimée.

js
const objetSimilaireTableau = {  length: 3,  unrelated: "foo",  2: 4,};console.log(Array.prototype.pop.call(objetSimilaireTableau));// 4console.log(objetSimilaireTableau);// { length: 2, unrelated: 'foo' }const plainObj = {};// Il n'y a pas de propriété length, donc la longueur est 0Array.prototype.pop.call(plainObj);console.log(plainObj);// { length: 0 }

Utiliser un objet comme un tableau

push etpop sont volontairement génériques, et nous pouvons en tirer parti — comme le montre l'exemple suivant.

Notez que dans cet exemple, nous ne créons pas de tableau pour stocker une collection d'objets. À la place, nous stockons la collection sur l'objet lui-même et utilisonscall surArray.prototype.push etArray.prototype.pop pour faire croire à ces méthodes que nous manipulons un tableau.

js
const collection = {  length: 0,  ajouterElement(...elements) {    // obj.length sera incrémenté automatiquement    // à chaque ajout d'un élément.    // Retourne ce que push retourne, c'est-à-dire    // la nouvelle valeur de la propriété length.    return [].push.call(this, ...elements);  },  supprimerElement() {    // obj.length sera décrémenté automatiquement    // à chaque suppression d'un élément.    // Retourne ce que pop retourne, c'est-à-dire    // l'élément supprimé.    return [].pop.call(this);  },};collection.ajouterElement(10, 20, 30);console.log(collection.length); // 3collection.supprimerElement();console.log(collection.length); // 2

Spécifications

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

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par lescontributeurs du MDN.


[8]ページ先頭

©2009-2025 Movatter.jp