Проверить наличие ключа JS

При работе с объектами в Javascript иногда может возникнуть необходимость проверить наличие определенного ключа. Давайте посмотрим, как это делается. Пусть для примера у нас есть следующий объект:

let obj = { name: 'john', surn: 'smit', };

Рассмотрим способы проверки наличия ключа в объекте.

Прямая проверка

Можно проверить наличия ключа с помощью прямой проверки:

if (obj['key'] !== undefined) { console.log('ключ существует') } else { console.log('ключа нет') }

Оператор in

Можно проверить наличия ключа с помощью оператора in. Он работает следующим образом: если ключ существует в объекте, он вернет true, иначе - false. Пример использования:

if ('key' in obj) { console.log('ключ существует') } else { console.log('ключа нет') }

Метод hasOwnProperty

Метод hasOwnProperty проверяет, принадлежит ли ключ самому объекту, а не наследован через прототипа. Он возвращает true если ключ принадлежит объекту и false если нет. Пример использования:

if (obj.hasOwnProperty('key')) { console.log('ключ существует в объекте') } else { console.log('ключа нет') }