Gerador via propriedade computada em JavaScript
Na lição anterior, atribuímos o gerador para o objeto com um comando separado. Este era o nosso objeto:
let obj = {
a: 1,
b: 2,
c: 3,
};
Foi assim que definimos o gerador:
obj[Symbol.iterator] = function *() {
for (let key in this) {
yield obj[key];
}
}
Na verdade, podemos reescrever nosso código
de forma diferente usando uma
propriedade computada:
let obj = {
a: 1,
b: 2,
c: 3,
[Symbol.iterator]: function *(){
for (let key in this){
yield this[key];
}
}
};
Vamos testar a iteração:
for (let elem of obj) {
console.log(elem); // 1, 2, 3
}
Reescreva a solução do problema da lição anterior usando uma propriedade computada.