javascript - 嵌套对象,防止 "cannot get value of ' undefined'"

标签 javascript json

<分区>

假设我有一个名为 John 的对象,里面有许多其他嵌套对象,我正尝试按照以下方式访问它们

if (john.address.highstreet) {
    var highstreet = john.address.highstreet
}

但是如果 address 属性为 null,那么我会得到一个错误

unable to get property 'highstreet' of undefined

我的函数执行停止了

有没有一种方法可以访问嵌套属性,而无需像下面所示那样进行许多嵌套 if 语句:

if (john.address) {
    if (john.address.highstreet) {
        var highstreet = john.address.highstreet
    }
}

最佳答案

标准的方式是

if (john.address && john.address.highstreet) {
    var highstreet = john.address.highstreet
}

如果地址未定义,则将返回该地址。

关于javascript - 嵌套对象,防止 "cannot get value of ' undefined'",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41573449/

相关文章:

javascript - 未捕获的ReferenceError : load is not defined

python - 如何从弹性滚动结果更快地建立 Pandas 数据框?

json - 我应该在哪里存储我的 Xcode Swift 应用程序的初始数据?

json - ExpressJS POST 无法记录正文

ios - 如何在ios中写入json文件

JavaScript 问题。变量在函数内部设置,但在函数外部则不然

Javascript lerp 函数没有给出准确的答案

javascript - Jquery在php处理时显示消息

json - Jackson 中的过滤字段和子字段

javascript - ReactJs 中按钮组的事件类