Penjana Melalui Sifat Terkira dalam JavaScript
Dalam pelajaran sebelumnya, kita menetapkan penjana untuk objek dengan perintah berasingan. Seperti inilah objek kami:
let obj = {
a: 1,
b: 2,
c: 3,
};
Beginilah cara kami menetapkan penjana:
obj[Symbol.iterator] = function *() {
for (let key in this) {
yield obj[key];
}
}
Sebenarnya, kita boleh menulis semula kod kami
dengan cara lain melalui
sifat terkira:
let obj = {
a: 1,
b: 2,
c: 3,
[Symbol.iterator]: function *(){
for (let key in this){
yield this[key];
}
}
};
Mari kita uji lelaran:
for (let elem of obj) {
console.log(elem); // 1, 2, 3
}
Tulis semula penyelesaian masalah dari pelajaran sebelumnya melalui sifat terkira.