Или, возможно, поддерживается в более баустерах: hasOwnProperty
if(dictionary.hasOwnProperty('school')) { …
В пограничных случаях может быть проблематично: typeof
if(typeof dictionary.school != 'undefined') { …
Нельзя использовать != undefined, поскольку undefined не является ключевым словом, а семантика его зависит от браузера:
if(dictionary.school != undefined) { …
Ответ 3
Оператор 'in'.
if ('school' in dictionary)
Ответ 4
Вы также можете попробовать:
if(dictionary.hasOwnProperty('school'))
Метод hasOwnProperty будет оценивать только true, если свойство действительно находится на экземпляре, а не просто унаследовано от прототипа - как в случае с in.
Например, evaluting ('toString' in myObject) будет true, а myObject.hasOwnProperty('toString') будет false.