# JS проверка существования объекта

Проверить существование объекта можно с помощью оператора `typeof`. Если переменная представляет собой объект, то `typeof` вернет `'object'`. Пример использования:

`let obj; if (typeof obj === 'object') { console.log('+++'); } else { console.log('---'); }`

## Проверка существования свойства объекта

Оператор `in` возвращает `true`, если указанное свойство существует в объекте, и `false` - если нет. Для примера проверим, существует ли в объекте свойство `'a'`:

`let obj = {a: 1, b: 2, c: 3}; if ('a' in obj) { console.log('свойство существует'); } else { console.log('свойство не существует'); }`

## Использование метода hasOwnProperty

Метод `hasOwnProperty` позволяет проверить, является ли указанное свойство непосредственно собственностью данного объекта, а не унаследовано от его прототипа. Давайте посмотрим на практике. Пусть у нас есть следующий объект:

`let obj = { name: 'john', sayName: function() { console.log(this.name); } };`

Проверим, его свойство `name` собственное или нет:

`if (obj.hasOwnProperty('name')) { console.log('+++'); } else { console.log('---'); }`
← →
↑