Javascript 如何访问嵌套对象的属性?
我试着用这段代码初始化一个变量Javascript 如何访问嵌套对象的属性?,javascript,node.js,nested,javascript-objects,Javascript,Node.js,Nested,Javascript Objects,我试着用这段代码初始化一个变量 var foo = {bar: {baz: 3}, qux: {fooAgain: foo.bar.baz + 5}} 但是我得到了错误TypeError:无法读取未定义的属性“bar” 如何从qux访问属性baz?编辑回答您的评论: var bar = {baz: 3}; var foo = {bar: bar, qux: {fooAgain: bar.baz + 5}}; 这样,您首先创建bar变量,然后使用它创建foo变量 解释: 您的原始代码不
var foo = {bar: {baz: 3}, qux: {fooAgain: foo.bar.baz + 5}}
但是我得到了错误TypeError:无法读取未定义的属性“bar”
如何从
qux
访问属性baz
?编辑回答您的评论:
var bar = {baz: 3};
var foo = {bar: bar, qux: {fooAgain: bar.baz + 5}};
这样,您首先创建bar变量,然后使用它创建foo变量
解释:
您的原始代码不起作用,因为在实际初始化foo对象之前,您试图访问foo对象的属性栏。这不是我想要的。我想要一个包含以下字段的单个变量,
bar
和qux
bar
是一个对象本身,只有一个字段,baz
,初始化为3。而qux
也是一个对象,有一个字段,foo
,我想初始化为5加baz
。我想知道的是如何从fooReach
中访问baz
。我想这是唯一可行的方法。在对象文字声明中不能这样做。当再次创建时,还没有可访问的内容。