Встречается на собеседованиях • сегодня

Можно ли определить поведение for…of в созданном объекте

Да, можно, используя итераторы. Для этого объект должен реализовать метод [Symbol.iterator](), который возвращает объект с методом next(). Этот метод должен возвращать объект с полями value (текущее значение) и done (флаг завершения).

Пример:

javascript
const myIterable = {
  from: 1,
  to: 3,
  [Symbol.iterator]() {
    let current = this.from;
    const last = this.to;
    return {
      next() {
        return current <= last 
          ? { value: current++, done: false } 
          : { done: true };
      }
    };
  }
};

for (const num of myIterable) {
  console.log(num); // 1, 2, 3
}
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы