# Итерируемые объекты в JavaScript

Любой объект, который можно перебрать через цикл `for of`, называется итерируемым.

Массивы являются одним из частных случаев итерируемых объектов:

`let arr = [1, 2, 3]; for (let elem of arr) { console.log(elem); }`

Коллекции `Map` также являются итерируемыми объектами:

`let map = new Map(); map.set('a', 1); map.set('b', 2); map.set('c', 3); for (let elem of map) { console.log(elem); }`

Коллекции `NodeList` также являются итерируемыми объектами:

`let elems = document.querySelectorAll('p'); for (let elem of elems) { console.log(elem); }`

Кроме того, JavaScript позволяет сделать итерируемым все, что угодно. Для этого существуют специальные манипуляции, которые мы будем изучать в следующих уроках:

`let obj = {a: 1, b: 2, c: 3}; // тут хитрые манипуляции for (let elem of obj) { // можно перебирать console.log(elem); }`

Приведите еще примеры известных вам сущностей, которые являются итерируемыми объектами.

←→
↑
en ru