无法动态获取JSON值

时间:2018-09-28 00:04:47

标签: javascript

我正在处理以下代码段。为什么我无法获得

presentRenderbuffer

工作吗?如您所见,我可以在传递let node = 'Em2'; console.log(data.node.c2); 的同时获取数据,但是像这样的data.Em2.c1这样的动态格式却出现此错误

  

TypeError:无法读取未定义的属性“ c2”

代码:

let node = 'Em2'; console.log(data.node.c2);

var data ={
   "Em1": { "c1":"#FFF", "c2":"#EEE" },
   "Em2": { "c1":"#DDD", "c2":"#ooo" }
}


let node = 'Em2';

console.log(data.Em2.c1);
console.log(data.node.c2);

2 个答案:

答案 0 :(得分:2)

使用方括号[]access object member via variable

var data ={
   "Em1": { "c1":"#FFF", "c2":"#EEE" },
   "Em2": { "c1":"#DDD", "c2":"#ooo" }
}


let node = 'Em2';

console.log(data.Em2.c1);
console.log(data[node].c2);

相似的问题:how to access object property using variable

答案 1 :(得分:0)

尝试使用console.log(data.node.c2)代替console.log(data[node][c2])