DébutantNon commencé

Exercice 6.9 · 8 min · 0 tentative

Modifier un objet dans un tableau

🎯 Objectif

Utiliser find() pour chercher un objet et modifier ses propriétés.

📖 Contexte

Trouver un objet avec find()

find() retourne le premier objet qui correspond à la condition :

const produits = [
  { id: 1, nom: "Café", prix: 4.50 },
  { id: 2, nom: "Thé", prix: 3.00 },
  { id: 3, nom: "Jus", prix: 5.00 }
]

const the = produits.find(p => p.id === 2)
// { id: 2, nom: "Thé", prix: 3.00 }

const cafe = produits.find(p => p.nom === "Café")
// { id: 1, nom: "Café", prix: 4.50 }

Modifier l'objet trouvé

Une fois l'objet trouvé, on modifie ses propriétés :

// Trouver le thé
const the = produits.find(p => p.id === 2)

// Modifier son prix
the.prix = 3.50

// Modifier son nom
the.nom = "Thé vert"

console.log(produits)
// Le produit id 2 est maintenant { id: 2, nom: "Thé vert", prix: 3.50 }

C'est une référence !

find() retourne l'objet original, pas une copie. Les modifications affectent directement le tableau :

const utilisateur = users.find(u => u.id === 1)
utilisateur.nom = "Nouveau nom"
// Le tableau users est modifié !

Récapitulatif : qui modifie quoi ?

MéthodeModifie l'original ?Retourne quoi ?
find()L'objet retourné est l'originalUn objet (ou undefined)
filter()NonUn nouveau tableau

Attention : find() retourne l'objet original du tableau, pas une copie. Si tu modifies l'objet trouvé, le tableau est modifié aussi !

// find = un seul résultat (référence vers l'original)
const cafe = produits.find(p => p.prix > 3)
cafe.prix = 10  // modifie aussi produits[0].prix !

// filter = tous les résultats (nouveau tableau)
const chers = produits.filter(p => p.prix > 3)

📝 Consigne

  1. Complète le find() pour trouver Bob (id = 2) : remplace ___ par la bonne condition
  2. Modifie sa note à 4.0 avec bob.note = 4.0
  3. Trouve Clara (id = 3) avec un deuxième find() et change son nom en "Claire"

Résultat attendu :

Élèves mis à jour: [{ id: 1, nom: "Alice", note: 4.5 }, { id: 2, nom: "Bob", note: 4 }, { id: 3, nom: "Claire", note: 5 }]

Objectifs

  • Utiliser find pour Bob
  • Modifier la note de Bob
  • Utiliser find pour Clara
  • Bob a 4.0
  • Clara devient Claire

Lis bien les instructions et lance-toi !

Indices (0/3)

Indice 1 verrouillé
Indice 2 verrouillé
Indice 3 verrouillé