Кто-нибудь знает, как узнать, существует ли свойство объекта? Вот мой пример:Как узнать, существует ли свойство в объекте
var test = {
a : 'west',
b : {
a : 'rest'
},
d : {
a : 'pest'
}
};
// I want to access 'a' in 'c'
typeof test.c.a; // fails!
typeof
, кажется, не может пройти мимо того факта, что 'c'
не существует, чтобы проверить, если 'a'
существует внутри него (я также пытался jQuery.type()
, которые также не таким же образом - Я бы подумал, что внутри этой функции будет проверяться ошибка).
В этом примере, конечно, я мог бы просто проверить, существует ли сначала 'c'
, но в моей реальной ситуации у меня есть большой и глубокий объект, и мне нужно динамически извлекать данные из любого потенциального местоположения, поэтому было бы неплохо, если бы были готовы - это решение, которое не требует использования try-catch
.
Заранее благодарен!
использование попытка поймать .. – Raghavendra
@raghavendra Обработка исключений должна быть за ... исключениями. Если вы можете проверить что-то заранее, вы действительно должны это сделать. –
@JamesThorpe нет другого пути, кроме этого. Я предлагаю использовать его, если вам требуется проверить свойство, которое существует не на самом уровне глубины. – Raghavendra