Что такое перебираемые объекты?

В JavaScript перебираемыми (или iterable) называются объекты, которые можно пройти в цикле for...of. К ним относятся массивы, строки, Map, Set и другие коллекции. Это как сумка, в которой можно достать каждую вещь по очереди.

Пример с массивом

Самый очевидный перебираемый объект — массив. Вы можете пройтись по нему с помощью for...of:

Строки тоже перебираемые

Каждая буква строки — как элемент массива. Строки также можно перебрать:

Map и Set

Представим, что у вас есть список заказов, где каждое значение уникально. Set идеально подойдёт для этого. А если у вас ключи и значения (например, имя клиента и заказ), используйте Map.

Создание собственного перебираемого объекта

Вы можете сделать любой объект перебираемым, добавив метод [Symbol.iterator]. Допустим, вы хотите создать счётчик:

Зачем нужны перебираемые объекты?

  • Позволяют удобно работать с коллекциями
  • Совместимы с for...of, spread, Promise.all() и другими
  • Даже строки и DOM-коллекции можно перебирать без индексов

Перебираемые объекты делают JavaScript более универсальным и удобным. Они позволяют вам "пройтись" по чему угодно — от массива до собственной логики итерации.