Get to know MDN better
Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
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éthode push() des instances Array ajoute les éléments définis à la fin d'un tableau et retourne la nouvelle longueur du tableau.
Les éléments à ajouter à la fin du tableau.
La nouvelle propriété length de l'objet sur lequel la méthode a été appelée.
La méthode push() ajoute des valeurs à un tableau.
Array.prototype.unshift() a un comportement similaire à push(), mais appliqué au début d'un tableau.
La méthode push() est une méthode de mutation. Elle modifie la longueur et le contenu de this. Si vous souhaitez que la valeur de this reste identique mais retourner un nouveau tableau avec des éléments ajoutés à la fin, vous pouvez utiliser arr.concat([element0, element1, /* ... ,*/ elementN]) à la place. Remarquez que les éléments sont placés dans un tableau supplémentaire — sinon, si l'élément est lui-même un tableau, il serait décomposé au lieu d'être ajouté comme un seul élément à cause du comportement de concat().
La méthode push() est générique. Elle attend seulement que la valeur de this possède une propriété length et des propriétés à clés entières. Bien que les chaînes de caractères ressemblent aussi à des tableaux, cette méthode ne leur convient pas car elles sont immuables.
Le code suivant crée un tableau sports contenant deux éléments, puis ajoute deux éléments supplémentaires. La variable total contient la nouvelle longueur du tableau.
Cet exemple utilise la syntaxe de décomposition pour ajouter tous les éléments d'un second tableau au premier.
La fusion de deux tableaux peut aussi se faire avec la méthode concat().
La méthode push() lit la propriété length de this. Elle définit ensuite chaque index de this à partir de length avec les arguments passés à push(). Enfin, elle définit la propriété length à l'ancienne valeur plus le nombre d'éléments ajoutés.
Comme mentionné précédemment, push est volontairement générique, ce qui peut être utilisé à notre avantage. Array.prototype.push fonctionne très bien sur un objet, comme le montre cet exemple.
Notez que nous ne créons pas un tableau pour stocker une collection d'objets. À la place, nous stockons la collection sur l'objet lui-même et utilisons call sur Array.prototype.push pour faire croire à la méthode que nous manipulons un tableau — et cela fonctionne, grâce à la façon dont JavaScript permet d'établir le contexte d'exécution comme on le souhaite.
Notez que même si obj n'est pas un tableau, la méthode push a bien incrémenté la propriété length de obj comme si nous manipulions un véritable tableau.
| ECMAScript® 2027 Language Specification # sec-array.prototype.push |
Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.
Cette page a été modifiée le 5 nov. 2025 par les contributeur·ice·s du MDN.
Votre modèle pour un internet meilleur.
Visitez la société mère à but non lucratif de Mozilla Corporation, la Fondation Mozilla.
Certaines parties de ce contenu sont protégées par le droit d'auteur ©1998—2026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.