0

这是我的对象:

    obj = {
      "FirstName": "Fawad",
      "LastName": "Surosh",
      "Education": {"University": "ABC", "Year": "2012"}
    }

这是我的 node.js 代码:

var nodeName = 'Education.Year';
obj.nodeName; //this should return the value of Year which is '2012'

有什么方法可以实现这个解决方案吗?这是因为我的 nodeName 是从 db 表中提取的,并不具体。

4

1 回答 1

1

您可以分割并nodeName.每个部分导航对象。

var result;
result = obj['Education'];
result = obj['Year'];

console.log(result); // 2012

例子:

var obj = {
  "FirstName": "Fawad",
  "LastName": "Surosh",
  "Education": {"University": "ABC", "Year": "2012"}
};

var nodeName = 'Education.Year';

var result = nodeName.split('.').reduce((a, b) => {
  a = a[b];
  return a;
}, obj);

document.getElementById('result').value = result;
<input id='result' type='text' />

于 2016-04-06T01:23:22.877 回答