-2

我正在构建我认为稍微复杂的东西,但我意识到它并没有按照我想要的方式工作,所以我在这里。

以下是我正在做的一个例子。

ITEM1: {
  prop1: 'desc1',
  prop2: 'desc2',
},
ITEM2: {
  prop1: 'desc1',
  prop2: {
    SUBITEM1: {
      prop1: 'desc1',
      prop2: 'desc2',
      prop3: 'desc3'
    }
  }
}

现在,如果我执行以下操作,这将非常有效

ITEM2.prop2.SUBITEM1.prop1;

问题是我做不到ITEM2.prop2.SUBITEM1我需要按以下方式进行

ITEM2.prop2["SUBITEM1"].prop1

该项目还很年轻,所以如果需要重建整个列表以正确执行此操作,我不介意。

我希望这是有道理的。

4

2 回答 2

4

你实际上尝试了什么?它在 Chrome 中也是如此。截图供您参考...

文字表示:

ITEM1= {
  prop1: 'desc1',
  prop2: 'desc2',
},
ITEM2= {
  prop1: 'desc1',
  prop2: {
    SUBITEM1: {
      prop1: 'desc1',
      prop2: 'desc2',
      prop3: 'desc3'
    }
  }
}
Object
ITEM2.prop2.SUBITEM1.prop1;
"desc1"
ITEM2.prop2["SUBITEM1"].prop1
"desc1"
于 2013-02-06T19:00:12.127 回答
0

你想要单独的对象吗?我猜你错过了var关键字。在这种情况下,您还必须删除那里多余的逗号。尝试这个:

var ITEM1 = {
  prop1: 'desc1',
  prop2: 'desc2',
};
var ITEM2 = {
  prop1: 'desc1',
  prop2: {
    SUBITEM1: {
      prop1: 'desc1',
      prop2: 'desc2',
      prop3: 'desc3'
    }
  }
};
console.log(ITEM2.prop2.SUBITEM1.prop1); // Works!
于 2013-02-06T19:00:09.173 回答