使用字符串路径访问对象的属性

时间:2018-06-07 16:17:14

标签: javascript string javascript-objects

我不知道更好的方式来描述标题,所以请听我说。

基本上我有一个大的对象,我需要到达叶子并返回值。我能到达那里的唯一方法是通过一个字符串来实质上描述那里的路径。所以说我有以下对象:

const obj = {
  inTheObj: {
    inInTheObj: {
      someProperty: 'hello'
    }
    anotherInTheObj : {
      inAnotherInTheObj: {
        someOtherProperty: 'blablablabla'
      }
    }
  }
} 

现在,我收到以下字符串'obj.InTheObj.inInTheObj.someProperty'。我想要做的是以某种方式解析这个字符串,以便我可以实际到达someProperty。基本上使字符串以某种方式导致这个陈述:

const hello = obj.inTheObj.inInTheObj.someProperty // value: 'hello'

OR

const hello = obj['inTheObj']['inInTheObj']['someProperty'] // value: 'hello'

我该怎么做?我尝试访问的属性的深度和路径与我正在使用的对象不同。

目前我正在尝试将字符串拆分为.,因此它变成了一个包含我必须进入的每个对象的数组,但我仍然不知道如何使用该信息来实现。我怎么离开这里?

0 个答案:

没有答案