使用字符串路径访问JSON数据?

Kar*_*son 0 javascript

var give = 'i.want.it';

var obj = {
    i: {
        want: {
            it: 'Oh I know you do...'
        }
    }
};

console.log(obj[give]); // 'Oh I know you do...'
Run Code Online (Sandbox Code Playgroud)

我可以以某种方式使用路径字符串获取对象字符串吗?我试图在一个数据库中存储一个关系,它不能在它自己的文档中.

Pra*_*lan 11

使用Array#reduce()方法

var give = 'i.want.it';

var obj = {
  i: {
    want: {
      it: 'Oh I know you do...'
    }
  }
};


var res = give.split('.').reduce(function(o, k) {
  return o && o[k];
}, obj);

console.log(res);
Run Code Online (Sandbox Code Playgroud)