Objetos iteráveis em JavaScript

Qualquer objeto que pode ser percorrido com o loop for of é chamado de iterável.

Arrays são um dos casos particulares de objetos iteráveis:

javascriptlet arr = [1, 2, 3];

for (let elem of arr) {
  console.log(elem);
}

As coleções Map também são objetos iteráveis:

javascriptlet map = new Map();
map.set('a', 1);
map.set('b', 2);
map.set('c', 3);

for (let elem of map) {
  console.log(elem);
}

As coleções NodeList também são objetos iteráveis:

javascriptlet elems = document.querySelectorAll('p');

for (let elem of elems) {
  console.log(elem);
}

Além disso, JavaScript permite tornar qualquer coisa iterável. Para isso existem manipulações especiais, que estudaremos nas próximas lições:

javascriptlet obj = {a: 1, b: 2, c: 3};

// aqui manipulações complexas

for (let elem of obj) { // é possível iterar
  console.log(elem);
}
Задание 1

Dê outros exemplos de entidades conhecidas por você que são objetos iteráveis.