JavaScript හි වස්තුවක පුනරාවර්තකය
වස්තුවක් හරහා පුනරාවර්තනය කිරීමට භාවිතා කළ හැකි පුනරාවර්තකයක් අපි සාදමු. පළමුව, වස්තුවක් පරාමිතියක් ලෙස ලබා ගෙන එය හරහා පුනරාවර්තනය කරන උත්පාදකයක් සාදමු:
function *func(obj) {
for (let key in obj) {
yield obj[key];
}
}
දැන් අපි පුනරාවර්තකයක් සාදමු:
let iter = func({a: 1, b: 2, c: 3});
ලූපයක් සමඟ පුනරාවර්තකය හරහා පුනරාවර්තනය කරමු:
for (let elem of iter) {
console.log(elem); // 1, 2, 3
}
වස්තුවක් හරහා පුනරාවර්තනය කරන පුනරාවර්තකයක් සාදන්න, එහි සෑම ඇමතුමකදීම අරාවක් ආපසු ලබා දෙන, එහි ශුන්යම අංගයේ යතුර පවතින අතර, පළමු අංගයේ - වස්තුවේ මූලද්රව්යයේ අගය පවතී. උදාහරණය:
let iter = func({a: 1, b: 2, c: 3});
for (let elem of iter) {
console.log(elem); // ['a', 1], ['b', 2], ['c', 3]
}