Как проверить является ли переменная объектом js
5 лет назад
Человек-Молекула
Ответы
Еще пара способов:
- Использование метода Object.prototype.toString():
- Использование оператора instanceof:
4 года назад
Aleksey
Самый простой способ проверить, что переменная является объектом, это проверить тип переменной с помощью typeof. Для объектов эта инструкция вернёт строку 'object'.
Например:
Стоит учитывать, что для null значение будет тоже 'object', так как в системе типов JS null является объектом.
4 года назад
Ivan Gagarinov
В javascript оператор typeof возвращает 'object' не только для классических объектов {}, но и для массивов и null:
Поэтому, скажем так, "классический" способ проверки, что перед вами точно объект, а не массив или null такой:
Во всяком случае, это код набрал наибольшее количество звезд на stackoverflow.
2 года назад
Дмитрий Чувиковский
typeof value === 'object' не хватает: он вернёт 'object' и для массива, и для null. Проверка обычного объекта выглядит так:
Что возвращает typeof
Функции тоже объекты, но typeof для них возвращает 'function'.
Только «простой» объект
Если нужно отличить {} от Date, Map и экземпляров классов, проверьте прототип:
Экземпляр конкретного класса
Проверить, что объект пустой
Библиотеки
В Lodash есть готовые _.isObject() (вернёт true и для массивов и функций) и _.isPlainObject().
Типы данных разбирают в бесплатном курсе «Основы JavaScript».
19 дней назад
Никита Вихров






