web-dev-qa-db-fra.com

Comment puis-je ignorer certaines valeurs renvoyées par la déstructuration de tableaux?

Puis-je éviter de déclarer une variable inutile lors de la déstructuration d'un tableau lorsque je ne suis intéressé que par des valeurs de tableau au-delà de l'index 0?

Dans ce qui suit, je veux éviter de déclarer a, je ne suis intéressé que par l'index 1 et au-delà.

// How can I avoid declaring "a"?
const [a, b, ...rest] = [1, 2, 3, 4, 5];

console.log(a, b, rest);
26
KevBot

Puis-je éviter de déclarer une variable inutile lors de la déstructuration d'un tableau lorsque je ne suis intéressé que par des valeurs de tableau au-delà de l'index 0?

Oui, si vous laissez le premier index de votre affectation vide, rien ne sera attribué. Ce comportement est expliqué ici .

// The first value in array will not be assigned
const [, b, ...rest] = [1, 2, 3, 4, 5];

console.log(b, rest);

Vous pouvez utiliser autant de virgules que vous le souhaitez où vous le souhaitez, sauf après un élément de repos:

const [, , three] = [1, 2, 3, 4, 5];
console.log(three);

const [, two, , four] = [1, 2, 3, 4, 5];
console.log(two, four);

Ce qui suit produit une erreur:

const [, ...rest,] = [1, 2, 3, 4, 5];
console.log(rest);
46
KevBot