Задать вопрос
@Romario5891

Как проверить, что значение является итерируемым?

Как в JS проверить, является ли передаваемая сущность итерируемой или нет?
  • Вопрос задан
  • 253 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
const isIterable = x =>
  x?.[Symbol.iterator] instanceof Function;

isIterable([]) // true
isIterable('') // true
isIterable(document.scripts) // true
isIterable(Array().keys()) // true
isIterable((function*(){})()) // true

isIterable() // false
isIterable(null) // false
isIterable(1) // false
isIterable({}) // false
isIterable(isIterable) // false
Ответ написан
Комментировать
rozhnev
@rozhnev
Fullstack programmer, DBA, медленно, дорого
try ... catch
let iterable = false;
try {
    for(let i in x) {
       break;
    }
     iterable = true; 
} catch(e) {
    iterable = false;
}

console.log(iterable);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы