Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法访问对象的子属性。_Javascript_Jquery_Jquery Mobile_Backbone.js - Fatal编程技术网

Javascript 无法访问对象的子属性。

Javascript 无法访问对象的子属性。,javascript,jquery,jquery-mobile,backbone.js,Javascript,Jquery,Jquery Mobile,Backbone.js,我设置了一个javascript对象,如下所示: “someObject” : { “A” : { “id” : “323klj”, “name” : “subObject1”, “value” : “0” } “B” : { “id” : “63sdf”, “name” : “subObjectB”, “value” : “9” } } 我试图访问子对象的“值”属性。但是当我像这样访问它们时 console.log(someObject.A.value) 结果未定义 如

我设置了一个javascript对象,如下所示:

“someObject” : {
    “A” : { “id” : “323klj”, “name” : “subObject1”, “value” : “0” }
    “B” : { “id” : “63sdf”, “name” : “subObjectB”, “value” : “9” }
}
我试图访问子对象的“值”属性。但是当我像这样访问它们时

console.log(someObject.A.value)  
结果未定义

如果我尝试像这样将以下内容输出到控制台(一行接一行)

在控制台中,我将看到以下内容:

-第一行:someObject将按预期显示,且所有子对象和属性保持不变

-第二行:我将看到子对象A,但是缺少“value”属性

-第三行:未定义

我的问题是,有没有人知道是什么让这一切发生的?我在解决这个问题时遇到了困难,我甚至不明白这是怎么可能的。我知道这在正常情况下应该是可行的。仅供参考:这是一个更大的主干应用程序的一部分,我也在使用jquery mobile。这可能与这些框架之一有关吗?(实际代码太复杂,无法粘贴到这里,我只是想给出一个示例来说明发生了什么)。

这对我很有用:

var someObject = {
    A : { id : "323klj", name : "subObject1", value : "0" },
    B : { id : "63sdf", name : "subObjectB", value : "9" }
}
console.log(someObject.A.value); //returns 0
console.log(someObject.B.value); //returns 9

注意:复制粘贴文本我必须更改双引号,在我的浏览器中它们显示为“”,因此我将它们更改为“”“

好吧,我最后使用了一个变通方法,所以我不想让其他人在这个问题上浪费时间,并将其标记为已回答,但我仍然很困惑到底发生了什么…

对象是如何生成的?属性是如何设置的?是否
value
是通过Ajax填充的,并且您正在尝试在设置属性之前访问它?有些控制台有一种奇怪的计算对象的方法,所以你不应该相信每一个输出。感谢FelixThanks的建议,让我检查它。Jimmy,我很有信心代码是有效的,只是我的应用程序出了问题。这些奇怪的引语是由于我在一个文本编辑器中写下了这个问题。
var someObject = {
    A : { id : "323klj", name : "subObject1", value : "0" },
    B : { id : "63sdf", name : "subObjectB", value : "9" }
}
console.log(someObject.A.value); //returns 0
console.log(someObject.B.value); //returns 9