Метод hasOwnProperty() возвращает логическое значение, указывающее, содержит ли объект указанное свойство.
obj.hasOwnProperty(prop)
prop
Имя проверяемого свойства.
Каждый объект, произошедший от Object
, наследует метод hasOwnProperty
.
Этот метод может использоваться для определения того, содержит ли объект указанное свойство в качестве собственного свойства объекта; в отличие от оператора in
, этот метод не проверяет существование свойств в цепочке прототипов объекта.
Как отличить отсутствующее свойство от свойства со значением undefined
?
Если свойство отсутствует, то метод hasOwnProperty()
вернёт false;
А undefined будет, когда переменная/ключ заданы, а значения не содержит.
Переменная, не имеющая присвоенного значения, обладает типом undefined
.
Также undefined
возвращают метод или инструкция, если переменная, участвующая в вычислениях, не имеет присвоенного значения. Функция возвращает undefined
, если она не возвращает какого-либо значения.