我有一个看起来像这样的js-object:
Inköp: {
name: 'Inköp',
key: 73,
def: Kvitto,
menu: {
Kvitto: {
key: 75,
name: 'med kvitto',
},
Faktura: {
key: 70,
name: 'på faktura',
}
}
}
关键Def是deafult的简称,并且假设用于检索Inköp.menu.Kvitto,我当前的设置显然不起作用,我应该怎么做?
答案 0 :(得分:0)
您无法在同一个对象文字中引用对象文字中的另一个对象节点,但可以从文字外部执行此操作。例如,您可以这样做:
var obj = {
Inköp: {
name: 'Inköp',
key: 73,
menu: {
Kvitto: {
key: 75,
name: 'med kvitto',
},
Faktura: {
key: 70,
name: 'på faktura',
}
}
}
};
obj.def = obj.Inköp.menu.Kvitto;
您还可以将def
设置为字符串值"Kvitto"
,然后您可以从文字外部访问,如下所示:
obj.Inköp.menu[obj.Inköp.def];
这取决于您是否希望简洁地声明您的文字或使用它。