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

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

for...of и for...in используются для перебора элементов, но работают по-разному:

for...of:

  • Перебирает значения итерируемых объектов (массивы, строки, Map, Set и т.д.).
  • Не работает с обычными объектами (не итерируемыми).
javascript
const arr = [10, 20, 30];
for (const value of arr) {
  console.log(value); // 10, 20, 30
}

for...in:

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

Ключевые отличия:

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

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

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

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