首页 > 解决方案 > 读取 json 对象的属性时出现问题

问题描述

我正在使用来自 API 的请求的正文响应,当我使用 console.log 函数时,我的正文如下所示

var a= {
    "providers": [{
            "_id": "5cda8a7234157a00265258f2",
            "updatedAt": "2019-05-30T12:53:18.076Z",
            "createdAt": "2019-05-14T09:29:23.663Z",
            "name": "BROOD"
        },
        {
            "_id": "5cda8a723415f200265258f2",
            "updatedAt": "2019-05-30T12:53:18.076Z",
            "createdAt": "2019-05-14T09:29:23.663Z",
            "name": "REDUX"
        }
    ]
}
console.log(a['providers'][0].name) 

例如,当我尝试获取数组中第一个对象的名称时

console.log(body['providers'][0].name) 

我最终得到一个错误,如下所示

TypeError:无法读取未定义的属性“0”

我想要一些关于哪里出错以及访问数组中值的正确方法的帮助

标签: javascriptnode.jsjson

解决方案


当您需要此参数时,请尝试使用条件编写它 Like

if(a && a.providers && a.providers.length > 0){
   console.log(a['providers'][0].name)
}

推荐阅读