Objekti iteraator JavaScriptis
Loome iteraatori, mille abil saab objekti läbi käia. Alustuseks teeme generaatori, mis võtab parameetrina objekti ja käib selle läbi:
function *func(obj) {
for (let key in obj) {
yield obj[key];
}
}
Loome nüüd iteraatori:
let iter = func({a: 1, b: 2, c: 3});
Käime iteraatori läbi tsükliga:
for (let elem of iter) {
console.log(elem); // 1, 2, 3
}
Tehke iteraator, mis käib objekti läbi ja iga kõnega tagastab massiivi, mille nullindas elemendis on võti, ja esimeses elemendis - objekti elemendi väärtus. Näide:
let iter = func({a: 1, b: 2, c: 3});
for (let elem of iter) {
console.log(elem); // ['a', 1], ['b', 2], ['c', 3]
}