JavaScript-däki obyektiň iterator-y
Geliň, obyekti aýlap geçmek üçin ulanyp boljak iterator döredeliň. Ilki bilen, parametri hökmünde obyekti kabul edýän we ony aýlap geçýän generator ýasaýs:
function *func(obj) {
for (let key in obj) {
yield obj[key];
}
}
Indi iterator döredeliň:
let iter = func({a: 1, b: 2, c: 3});
Iteratory aýlaw bilen aýlap geçeliň:
for (let elem of iter) {
console.log(elem); // 1, 2, 3
}
Şeýle bir iterator ýasaň, ol obyekti aýlap geçip, her çagyryşda nol elementinde açary, birinci elementinde bolsa obyektiň elementiniň bahasy ýatan massiw gaýtarsyn. Mysal:
let iter = func({a: 1, b: 2, c: 3});
for (let elem of iter) {
console.log(elem); // ['a', 1], ['b', 2], ['c', 3]
}