在节点js(javascript)中使用动态键定义对象

在节点js(javascript)中使用动态键定义对象,javascript,node.js,oop,object-object-mapping,Javascript,Node.js,Oop,Object Object Mapping,我需要这样做: let obj = {} obj.obj1 = {'obj11':5} console.log(obj.obj1.obj11) //5 但我需要动态定义最后一个对象的最后一个键,例如: let obj = {} key = 'obj11' obj.obj1 = { key :5} console.log(obj.obj1.obj11) // undefined 是的,您可以这样做: console.log(obj.obj1[key]); JavaScript中的每个对

我需要这样做:

let obj = {}
obj.obj1 =  {'obj11':5}
console.log(obj.obj1.obj11)

//5
但我需要动态定义最后一个对象的最后一个键,例如:

let obj = {}
key = 'obj11'
obj.obj1 =  { key :5}
console.log(obj.obj1.obj11)
// undefined
是的,您可以这样做:

console.log(obj.obj1[key]);

JavaScript中的每个对象基本上都是一个字典,因此您可以通过字典语法访问它

要在javascript对象中定义计算属性,请使用
[]

请尝试以下操作:

让obj={}
键='obj11'
obj.obj1={[key]:5}

console.log(obj.obj1.obj11)
对于这类代码,您必须使用括号表示法
让obj={}
键='obj11'
obj.obj1={[key]:5}
console.log(obj.obj1.obj11)
Try

对象表示法语法不支持直接将变量作为键,但java脚本字典支持

要在对象表示法语法中计算变量,请使用如下括号

obj.obj1 = {[key]: 5};

console.log(obj.obj1.obj11);

@如果答案对您有帮助,请将此答案标记为已接受:-)不,如果这是可用的最佳答案,请将此答案标记为例外。
obj.obj1 = {[key]: 5};

console.log(obj.obj1.obj11);