【发布时间】:2020-03-03 02:46:48
【问题描述】:
如何在其父对象尚不存在的嵌套对象中为特定参数赋值?
var obj = {
'obj1' : {
'obj1a' : 'obj1a'
},
'obj2' : 'obj2'
}
obj.obj3.obj3a = 'obj3a' // this is what I want to work
但它给出了一个错误:
TypeError: obj.obj3 is undefined
javascript不能递归创建children参数的parents吗?
如果这根本不可行,是否有任何内置机制来处理此类情况,以免产生此类错误?类似于?. 功能的工作方式。
例如:console.log(obj?.obj1?.obj1a)
【问题讨论】:
-
你不能。您必须先创建对象。
-
JavaScript 不会自动创建中间对象。
-
你可以只做
obj.obj3 = {obj3a: 'obj3a'};如果你担心覆盖obj3以防它已经存在,你可以做obj.obj3 = {...obj.obj3, obj3a: 'obj3a'}
标签: javascript node.js object