Array. prototype. fill()
Remplit un tableau (ou une partie de celui-ci) avec une seule valeur.
- Renvoie
- Ce même tableau, rempli.
- Modifie l’original
- Oui
Exemple
#console.log(new Array(5).fill(0))
console.log([1, 2, 3, 4, 5].fill('x', 1, 3))Définition et utilisation
#La méthode fill(value, start, end) écrit la valeur donnée dans tous les éléments du tableau, ou dans une portion de start à end. Elle modifie le tableau d’origine et le renvoie.
Elle sert surtout à préparer un tableau de longueur connue : new Array(7).fill(0) crée sept zéros, par exemple comme compteur pour les jours de la semaine.
Attention aux objets : fill({}) place le même objet à chaque emplacement, donc modifier un élément les modifie tous. Pour créer des objets distincts, utilisez Array.from({ length }, () => ({})).
Syntaxe
#array.fill(value)
array.fill(value, start)
array.fill(value, start, end)Paramètres
#value
valeur quelconque
Valeur à écrire.start
optionnel
Indice de début, 0 par défaut.end
optionnel
Indice de fin (exclu), par défaut la longueur du tableau.
Plus d’exemples
#const shared = new Array(2).fill({ done: false })
shared[0].done = true
console.log(shared)
const separate = Array.from({ length: 2 }, () => ({ done: false }))
separate[0].done = true
console.log(separate)Compatibilité des navigateurs
#Largement disponible
Fonctionne dans tous les navigateurs modernes, y compris sur mobile. Vous pouvez l’utiliser sans crainte.
- Chrome
- Edge
- Firefox
- Safari
Bonnes pratiques
#- Pour remplir avec des objets, utilisez
Array.from()avec une fonction, afin que chaque élément soit un objet distinct. fill()modifie le tableau sur place ; ne l’appelez donc pas sur des données que vous ne voulez pas changer.
Entrées associées
#Vous voyez une erreur ou il manque un exemple ? Écrivez-nous.