HTML: Markup language
CSS: Styling language
JavaScript: Scripting language
Web APIs: Programming interfaces
All web technology
Learn web development
Discover our tools
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.
View in English Always switch to English
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 unshift() des instances de Array ajoute les éléments définis au début d'un tableau et retourne la nouvelle longueur du tableau.
unshift()
Array
const array1 = [1, 2, 3]; console.log(array1.unshift(4, 5)); // Résultat attendu : 5 console.log(array1); // Résultat attendu : Array [4, 5, 1, 2, 3]
unshift() unshift(element1) unshift(element1, element2) unshift(element1, element2, /* …, */ elementN)
element1
elementN
Les éléments à ajouter au début du tableau arr.
arr
La nouvelle valeur de la propriété length du tableau sur lequel a été appelée la méthode.
length
La méthode unshift() insère les valeurs fournies au début d'un objet ressemblant à un tableau.
La méthode Array.prototype.push() a un comportement similaire à unshift(), mais s'applique à la fin d'un tableau.
Array.prototype.push()
Veuillez noter que, si plusieurs éléments sont passés en paramètres, ils sont insérés en bloc au début de l'objet, dans le même ordre que celui dans lequel ils ont été passés en paramètres. Ainsi, appeler unshift() avec n arguments une fois, ou l'appeler n fois avec 1 argument (par exemple dans une boucle), ne donne pas le même résultat.
n
Exemple :
let arr = [4, 5, 6]; arr.unshift(1, 2, 3); console.log(arr); // [1, 2, 3, 4, 5, 6] arr = [4, 5, 6]; // réinitialisation du tableau arr.unshift(1); arr.unshift(2); arr.unshift(3); console.log(arr); // [3, 2, 1, 4, 5, 6]
La méthode unshift() est générique. Elle attend seulement que la valeur de this possède une propriété length et des propriétés à indices entiers. Bien qu'une chaîne de caractères soit aussi un objet ressemblant à un tableau, cette méthode ne convient pas pour être appliquée sur une chaîne de caractères, car elle est immuable.
this
const arr = [1, 2]; arr.unshift(0); // le résultat de l'appel est 3, qui est la nouvelle longueur du tableau // arr vaut [0, 1, 2] arr.unshift(-2, -1); // la nouvelle longueur du tableau est 5 // arr vaut [-2, -1, 0, 1, 2] arr.unshift([-4, -3]); // la nouvelle longueur du tableau est 6 // arr vaut [[-4, -3], -2, -1, 0, 1, 2] arr.unshift([-7, -6], [-5]); // la nouvelle longueur du tableau est 8 // arr vaut [ [-7, -6], [-5], [-4, -3], -2, -1, 0, 1, 2 ]
La méthode unshift() lit la propriété length de this. Elle décale tous les indices dans la plage de 0 à length - 1 vers la droite du nombre d'arguments (en incrémentant leurs valeurs de ce nombre). Ensuite, elle définit chaque indice à partir de 0 avec les arguments passés à unshift(). Enfin, elle définit la propriété length à l'ancienne longueur plus le nombre d'éléments ajoutés au début.
0
length - 1
const objetSimilaireTableau = { length: 3, unrelated: "foo", 2: 4, }; Array.prototype.unshift.call(objetSimilaireTableau, 1, 2); console.log(objetSimilaireTableau); // { '0': 1, '1': 2, '4': 4, length: 5, unrelated: 'foo' } const plainObj = {}; // Il n'y a pas de propriété length, donc la longueur est 0 Array.prototype.unshift.call(plainObj, 1, 2); console.log(plainObj); // { '0': 1, '1': 2, length: 2 }
Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.
Array.prototype.pop()
Array.prototype.shift()
Array.prototype.concat()
Array.prototype.splice()
Array.prototype.unshift