Iterátor objektu v JavaScriptu

Vytvořme iterátor, pomocí kterého bude možné procházet objekt. Nejprve vytvořme generátor, který přijímá objekt jako parametr a prochází jej:

javascriptfunction *func(obj) {
  for (let key in obj) {
    yield obj[key];
  }
}

Nyní vytvořme iterátor:

javascriptlet iter = func({a: 1, b: 2, c: 3});

Projděme iterátor cyklem:

javascriptfor (let elem of iter) {
  console.log(elem); // 1, 2, 3
}
Задание 1

Vytvořte iterátor, který bude procházet objekt a každým voláním vracet pole, v nultém prvku kterého bude klíč, a v prvním prvku - hodnota prvku objektu. Příklad:

javascriptlet iter = func({a: 1, b: 2, c: 3});

for (let elem of iter) {
  console.log(elem); // ['a', 1], ['b', 2], ['c', 3]
}