Подтвердить что ты не робот

В Javascript. как я могу определить, существует ли поле внутри объекта?

И, конечно, я хочу сделать это по коду. Это не то, что нет альтернативы этой проблеме, с которой я сталкиваюсь, просто любопытно.

4b9b3361

Ответ 1

ОБНОВЛЕНИЕ: используйте метод hasOwnProperty, как предлагает Гэри Чемберс. Решение ниже будет работать, но считается, что наилучшей практикой является использование hasOwnProperty.

if ('field' in obj) {
}

Ответ 2

Это будет игнорировать атрибуты, переданные через цепочку прототипов.

if(obj.hasOwnProperty('field'))
{
    // Do something
}

Ответ 3

В дополнение к вышесказанному вы можете использовать следующий способ:

if(obj.myProperty !== undefined) {
}

Ответ 4

На самом деле не помню, откуда это взялось, но вот что я использую:

 if (!! document.getElementById('id_of_field'))
     {
       // The field exist even if it empty
     }