Générateur via une propriété calculée en JavaScript
Dans la leçon précédente, nous avons assigné le générateur pour l'objet avec une commande séparée. Voici à quoi ressemblait notre objet :
let obj = {
a: 1,
b: 2,
c: 3,
};
Voici comment nous avons défini le générateur :
obj[Symbol.iterator] = function *() {
for (let key in this) {
yield obj[key];
}
}
En fait, on peut réécrire notre code
différemment en utilisant une
propriété calculée :
let obj = {
a: 1,
b: 2,
c: 3,
[Symbol.iterator]: function *(){
for (let key in this){
yield this[key];
}
}
};
Vérifions l'itération :
for (let elem of obj) {
console.log(elem); // 1, 2, 3
}
Réécrivez la solution du problème de la leçon précédente en utilisant une propriété calculée.