Javascript属性已定义,但返回未定义
我有一个JSON对象:Javascript属性已定义,但返回未定义,javascript,rxjs,redux-observable,Javascript,Rxjs,Redux Observable,我有一个JSON对象: { "type": "SIGN_IN", "credentials": { "id": "mt@ft.cc", "password": "jhkl" } } 当我记录obj.cedentials时,它显示相同的对象(作为obj) 当我尝试访问id时,比如:obj.credentials.id,它返回未定义的 为什么会这样?以后会评估吗 当我记录obj.cedentials时,它显示相同的对象(与obj相同) 因此,当您记录obj.ceden
{
"type": "SIGN_IN",
"credentials": {
"id": "mt@ft.cc",
"password": "jhkl"
}
}
当我记录obj.cedentials时,它显示相同的对象(作为obj)
当我尝试访问id时,比如:obj.credentials.id
,它返回未定义的
为什么会这样?以后会评估吗
当我记录obj.cedentials时,它显示相同的对象(与obj相同)
因此,当您记录obj.cedentials
时,您会得到一个具有凭证
属性的对象,该属性包含一个具有id
属性的对象
obj.cedentials
没有自己的id
属性
您需要
obj.cedentials.credentials.id
您的credentials
对象包含一个credentials
对象
因此,您需要使用以下各项:
console.log(obj.credentials.credentials.id);
{
"credentials": {
"type": "SIGN_IN",
"credentials": {
"id": "mt@ft.cc",
"password": "jhkl"
}
},
"type": "SIGN_IN",
...
}
obj
变量的全部内容实际上如下所示:
console.log(obj.credentials.credentials.id);
{
"credentials": {
"type": "SIGN_IN",
"credentials": {
"id": "mt@ft.cc",
"password": "jhkl"
}
},
"type": "SIGN_IN",
...
}
您的对象看起来像这样:
q = {
credentials: {
credentials: { ...id }
}
}
因此,要访问id,您需要使用:q.credentials.credentials.id
console.log(q.credentials.credentials.id);
您是否尝试了
obj.credentials.credentials.id
?,键入credentials
而不是cedentials
。我想是你借的OP中的一个打字错误。老兄,听说你喜欢证书