Objektiterator i JavaScript
Låt oss skapa en iterator med vilken vi kan iterera över ett objekt. Låt oss först skapa en generator som tar ett objekt som parameter och itererar över det:
function *func(obj) {
for (let key in obj) {
yield obj[key];
}
}
Låt oss nu skapa en iterator:
let iter = func({a: 1, b: 2, c: 3});
Låt oss iterera över iteratorn med en loop:
for (let elem of iter) {
console.log(elem); // 1, 2, 3
}
Skapa en iterator som itererar över ett objekt och vid varje anrop returnerar en array, där element noll innehåller nyckeln, och element ett - värdet för objektelementet. Exempel:
let iter = func({a: 1, b: 2, c: 3});
for (let elem of iter) {
console.log(elem); // ['a', 1], ['b', 2], ['c', 3]
}