> Можно ли использовать цикл for...of для перебора ключей объекта в JavaScript? (JavaScript)

Уровень: middle · Роль: frontend · Категория: Технические вопросы

Компании: The Tribe, Яндекс

Стек: JavaScript

> Пример ответа

Нет, цикл for...of напрямую не предназначен для перебора ключей объекта. Он работает с итерируемыми объектами (массивы, строки, Map, Set и т.д.), а обычные объекты не являются итерируемыми по умолчанию. Однако можно обойти это ограничение, используя методы Object.keys(), Object.values() или Object.entries(), которые возвращают массивы, а затем применить к ним for...of. Например:

JAVASCRIPT
const obj = { a: 1, b: 2, c: 3 };
for (const key of Object.keys(obj)) {
console.log(key); // 'a', 'b', 'c'
}

Также можно использовать for...in для прямого перебора ключей объекта, но он включает и унаследованные свойства, поэтому обычно рекомендуется комбинировать с hasOwnProperty.

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью