Iterator objekta v JavaScript
Ustvarimo iterator, s pomočjo katerega lahko preletimo objekt. Za začetek naredimo generator, ki sprejme objekt kot parameter in ga preleti:
function *func(obj) {
for (let key in obj) {
yield obj[key];
}
}
Zdaj ustvarimo iterator:
let iter = func({a: 1, b: 2, c: 3});
Preletimo iterator z zanko:
for (let elem of iter) {
console.log(elem); // 1, 2, 3
}
Naredite iterator, ki bo preletel objekt in ob vsakem klicu vrnil matriko, kjer bo v ničtem elementu ključ, v prvem elementu pa vrednost elementa objekta. Primer:
let iter = func({a: 1, b: 2, c: 3});
for (let elem of iter) {
console.log(elem); // ['a', 1], ['b', 2], ['c', 3]
}