web-dev-qa-db-fra.com

Récupère le premier et le dernier élément dans un tableau, manière ES6

let array = [1,2,3,4,5,6,7,8,9,0]

La documentation est quelque chose comme ça

[first, ...rest] = array affichera 1 et le reste du tableau

Maintenant, y a-t-il moyen de ne prendre que le premier et le dernier élément 1 & 0 avec Destructuring

ex: [first, ...middle, last] = array

Je sais prendre le premier et le dernier éléments dans l’autre sens, mais je me demandais si c’était possible avec es6

17
Nicholas

Le paramètre reste ne peut être utilisé qu'à la fin, pas ailleurs dans la déstructuration, il ne fonctionnera donc pas comme prévu.

Au lieu de cela, vous pouvez destructeur certaines propriétés (un tableau est aussi un objet dans JS), par exemple, 0 pour le premier et index du dernier élément pour le dernier.

let array = [1,2,3,4,5,6,7,8,9,0]

let {0 : a ,[array.length - 1] : b} = array;
console.log(a, b)

Ou son meilleur moyen d’extraire la longueur en tant que autre variable et d’obtenir la dernière valeur en fonction de cela (suggéré par @Bergi), cela fonctionnerait même s’il n’existait aucune variable faisant référence au tableau.

let {0 : a ,length : l, [l - 1] : b} = [1,2,3,4,5,6,7,8,9,0];
console.log(a, b)
20
Pranav C Balan