我有这个JSON对象:
{
"type": "SIGN_IN",
"credentials": {
"id": "mt@ft.cc",
"password": "jhkl"
}
}
当我记录obj.cedentials
时,它显示相同的对象(如obj);
{
"type": "SIGN_IN",
"credentials": {
"id": "mt@ft.cc",
"password": "jhkl"
}
}
当我尝试访问id时,例如:obj.credentials.id
,它返回undefined
为什么会这样?它会在以后评估吗?
答案 0 :(得分:3)
您的credentials
对象包含credentials
个对象。
所以你需要使用以下内容:
console.log(obj.credentials.credentials.id);
obj
变量的完整内容实际上如下:
{
"credentials": {
"type": "SIGN_IN",
"credentials": {
"id": "mt@ft.cc",
"password": "jhkl"
}
},
"type": "SIGN_IN",
...
}
答案 1 :(得分:3)
您的对象看起来像这样:
q = {
credentials: {
credentials: { ...id }
}
}
以便访问您需要使用的ID:q.credentials.credentials.id
答案 2 :(得分:0)
当我记录obj.cedentials时,它显示相同的对象(与obj相同);
{ "type": "SIGN_IN", "credentials": { "id": "mt@ft.cc", "password": "jhkl" } }
因此,当您记录obj.cedentials
时,您将获得一个具有credentials
属性的对象,该对象包含一个具有id
属性的对象。
obj.cedentials
没有自己的id
属性!
您需要obj.cedentials.credentials.id
。
答案 3 :(得分:0)
应该是
console.log(q.credentials.credentials.id);