console.log(data);
返回:
duration: 60
location::
city: "New York"
state: "New York"
但是console.log(data.location);
返回Undefined
。
那怎么可能?为什么不能访问嵌套对象?双重冒号在这里表示什么?
答案 0 :(得分:6)
属性“ location”实际上是JSON中的“ location:”。
如果在编写对象属性时引用该对象属性(或更正数据或解析以确保其为有效的JSON),则该对象属性应能按预期工作。
data["location:"]
或者,通过更正数据:
{
"duration": 60,
"location": {
"city": "New York",
"state": "New York"
}
}
答案 1 :(得分:3)
代替data.location
尝试data["location:"]
let data = {
"duration": 60,
"location:": {
"city": "New York",
"state": "New York",
},
}
console.log(data["location:"]);