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

В чем разница между for..in и for..of

for..in и for..of — это два разных способа итерации в JavaScript, но они работают с разными типами данных и по-разному.

for..in

  • Итерирует по перечисляемым свойствам объекта (включая унаследованные).
  • Подходит для объектов, но не рекомендуется для массивов, так как может захватывать не только индексы, но и другие свойства.
  • Возвращает ключи (или индексы для массивов).
javascript
const obj = { a: 1, b: 2 };
for (const key in obj) {
  console.log(key); // 'a', 'b'
}

for..of

  • Итерирует по значениям итерируемых объектов (массивы, строки, Map, Set и т. д.).
  • Не работает с обычными объектами (неитерируемыми).
  • Возвращает значения элементов.
javascript
const arr = [1, 2, 3];
for (const value of arr) {
  console.log(value); // 1, 2, 3
}

Итог:

  • for..in — для ключей объекта.
  • for..of — для значений итерируемых структур.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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