Les tableaux : ajouter, chercher, trier, transformer
Créer un tableau, insérer, supprimer et modifier ses éléments, le parcourir, chercher et trier, et utiliser les méthodes modernes map, filter, find et reduce.
1Situer
Une boutique en ligne d'artisanat de Safi gère son catalogue : des dizaines de poteries avec leur nom, leur prix et leur stock. Il faut ajouter un produit, retirer ceux qui sont épuisés, trier par prix, chercher un article, calculer la valeur du stock. Tout cela se fait avec les méthodes des tableaux.
2Comprendre
filter, map, reduce : la chaîne de traitement
Le tableau produits contient 4 poteries, chacune avec un prix et un stock.
for (const v of villes) console.log(v);
villes.forEach((v, i) =>console.log(i, v));
Chercher et trier
Méthode
Renvoie
includes(x)
true / false
indexOf(x)
l’indice, ou -1
find(f)
le premier élément qui vérifie f, ou undefined
findIndex(f)
son indice, ou -1
sort((a, b) => a - b)
trie sur place (croissant)
reverse()
inverse l’ordre
Transformer
const dispo = produits.filter((p) => p.stock>0); // garderconst noms = produits.map((p) => p.nom); // transformerconst total = produits.reduce((s, p) => s + p.prix* p.stock, 0); // réduire à une valeur
noms.join(', ') // en texte
filter, map et slice renvoient un nouveau tableau ; push, splice, sortmodifient le tableau existant.
Exemple simple
Le train et ses wagons
Un tableau est un train : chaque wagon a un numéro (l'indice, qui commence à 0). push accroche un wagon à la fin, pop décroche le dernier, shift décroche le premier.
Sur la chaîne de tri, filter garde seulement les bonnes olives, map les transforme (en huile !), reduce les additionne pour obtenir un total.
const prix = [120, 45, 300];
prix.filter((p) => p <200); // [120, 45]
prix.map((p) => p *1.2); // [144, 54, 360]
prix.reduce((s, p) => s + p, 0); // 465
Publicité
3Manipuler
Le catalogue est un tableau d'objets. Utilisez les méthodes des tableaux pour répondre aux consignes : la liste de la page affiche le tableau produits.