5.8 Enumération des propriétés d'un objet
Dans cette vidéo, on s'intéresse aux différentes façons d'énumérer les membres d'un objet en JavaScript. La technique de base est la boucle for...in, qui itère sur chaque clé de l'objet.
La boucle for...in
À chaque itération, la variable de boucle reçoit le nom (la clé) d'une propriété. On accède à la valeur correspondante via la notation entre crochets, car le nom est stocké dans une variable.
const circle = {
radius: 1,
draw() { console.log('draw'); }
};
for (let key in circle) {
console.log(key, circle[key]);
}
Cette approche énumère aussi bien les propriétés que les méthodes — tout ce qui est enumerable sur l'objet.
Tester l'existence d'une propriété : l'opérateur in
Pour vérifier si une clé existe sur un objet, on utilise l'opérateur in. Il renvoie true ou false.
if ('radius' in circle) {
console.log('radius existe');
}
Les méthodes Object.keys, values et entries
JavaScript moderne offre des approches plus élégantes que for...in. Object.keys(obj) renvoie un tableau de toutes les clés. Object.values(obj) renvoie un tableau des valeurs. Object.entries(obj) renvoie un tableau de paires [clé, valeur], ce qui permet une itération propre avec for...of et la déstructuration.
for (const [key, value] of Object.entries(circle)) {
console.log(key, value);
}
Cette dernière forme est souvent la plus lisible pour itérer sur un objet en récupérant à la fois la clé et la valeur. C'est aussi celle que vous croiserez le plus dans le code JavaScript moderne.