Utiliser la boucle for-in pour itérer sur les éléments d'un tableau
Dans cette étape, vous allez apprendre la boucle for-in en JavaScript, qui fournit un moyen simple d'itérer sur les propriétés d'un objet ou les éléments d'un tableau.
Créez un nouveau fichier nommé forInLoop.js
dans le répertoire ~/project
à l'aide de l'IDE Web :
// Itération sur un tableau à l'aide de la boucle for-in
let fruits = ["pomme", "banane", "cerise", "date"];
console.log("Itération sur les indices du tableau :");
for (let index in fruits) {
console.log(`Index : ${index}, Fruit : ${fruits[index]}`);
}
// Itération sur un objet à l'aide de la boucle for-in
let student = {
name: "John Doe",
age: 22,
major: "Informatique",
gpa: 3.8
};
console.log("\nItération sur les propriétés de l'objet :");
for (let property in student) {
console.log(`${property} : ${student[property]}`);
}
// Exemple pratique : Calcul du prix total des articles
let shoppingCart = [
{ name: "Ordinateur portable", price: 1000 },
{ name: "Ecouteurs", price: 100 },
{ name: "Souris", price: 50 }
];
console.log("\nCalcul du prix total :");
let totalPrice = 0;
for (let index in shoppingCart) {
totalPrice += shoppingCart[index].price;
}
console.log(`Prix total : ${totalPrice} $`);
Exécutez le fichier JavaScript pour voir la boucle for-in en action :
node ~/project/forInLoop.js
Sortie exemple :
Itération sur les indices du tableau :
Index : 0, Fruit : pomme
Index : 1, Fruit : banane
Index : 2, Fruit : cerise
Index : 3, Fruit : date
Itération sur les propriétés de l'objet :
name : John Doe
age : 22
major : Informatique
gpa : 3.8
Calcul du prix total :
Prix total : 1150 $
Points clés sur les boucles for-in :
- Fonctionne avec les tableaux et les objets
- Itère sur les indices (pour les tableaux) ou les propriétés (pour les objets)
- Fournit un moyen simple d'accéder aux éléments sans utiliser les boucles traditionnelles basées sur les indices
- Faites attention lorsqu'elles sont utilisées avec les tableaux, car elles itèrent sur toutes les propriétés énumérables
Explorons un autre exemple pour démontrer sa flexibilité :
// Utilisation de la boucle for-in pour filtrer et transformer des données
let grades = {
math: 85,
science: 92,
english: 78,
history: 88
};
console.log("Filtrer les notes supérieures à 80 :");
for (let subject in grades) {
if (grades[subject] > 80) {
console.log(`${subject} : ${grades[subject]}`);
}
}
Exécutez le fichier à nouveau :
node ~/project/forInLoop.js
Sortie exemple :
Filtrer les notes supérieures à 80 :
math : 85
science : 92
history : 88