Generatorius per apskaičiuojamą savybę JavaScript
Ankstesnėje pamokoje mes generatorių objektui priskirdavome atskira komanda. Tokias buvo mūsų objektas:
javascriptlet obj = {
a: 1,
b: 2,
c: 3,
};
Taip mes nustatydavome generatorių:
javascriptobj[Symbol.iterator] = function *() {
for (let key in this) {
yield obj[key];
}
}
Iš tikrųjų galime perrašyti mūsų kodą
kitaip naudodami
apskaičiuojamą savybę:
javascriptlet obj = {
a: 1,
b: 2,
c: 3,
[Symbol.iterator]: function *(){
for (let key in this){
yield this[key];
}
}
};
Patikrinkime perbėrimą:
javascriptfor (let elem of obj) {
console.log(elem); // 1, 2, 3
}
Задание 1
Perrašykite ankstesnės pamokos uždavinio sprendimą naudodami apskaičiuojamą savybę.