我在对象内有一个对象,该对象的名称可能会更改,如何在不按名称引用该对象的对象的情况下获取该值?
Object {medium-editor-1453741508068-0: Object}
medium-editor-1453741508068-0: Object
value: "this is what i want"
得到上面的内容:
this.mediumEditor.editor.serialize();
我需要类似的东西:
this.mediumEditor.editor.serialize().childObject.value;
最佳答案
如果顶级对象仅包含一个对象,则可以简单地使用Object.keys(topLevelObject)
来获取“对象的对象”名称。类似于以下内容:
var objectsObjectName = Object.keys(topLevelObject)[0];
var value = topLevelObject[objectsObjectName].value;
如果您具有更高级别的对象嵌套,或者如果对象的对象的值的名称(哇,这很难理解),也可以递归使用相同的逻辑。
您还可以迭代顶级对象:
for (var key in topLevelObject) {
var value = topLevelObject[key].value;
}
即使您只有一个嵌套对象,也可以这样做,即使编写一个循环知道它只会循环一次也很奇怪。