我有以下对象:
translations = {
'nl': {
'Dashboard': [
{
"Today's turnover": "Omzet van vandaag",
"Get an overview directly from your receipts on location.": "Bekijk een overzicht rechtstreeks vanuit uw inkomsten op locatie.",
"Choose your POS provider": "Kies uw POS provider"
}],
'Products': [],
'Order': []
}
}
我尝试访问Today's turnover
内Dashboard
个nl
属性的object['object property']
属性,根据问题和答案here可以访问比如:Cube.Attach(100,0,5);
:Tree.Attach(10,0,50);
:Plane.Attach(0,0,0);
:Terrain.Attach(0,0,0);
但是当我尝试访问它时,出于某种原因它是未定义的:
为什么这不起作用?
答案 0 :(得分:4)
Dashboard是一个数组,您的对象是此数组中的第一个元素。如果您使用'
字符串,也不必转义""
!
所以使用这个:
translations['nl']['Dashboard'][0]["Today's turnover"]
答案 1 :(得分:2)
检查以下代码是否适用于object['object property']
,可能是您使用了错误的密钥名称
translations = {
'nl': {
'Dashboard': [{
"Today's turnover": "Omzet van vandaag",
"Get an overview directly from your receipts on location.": "Bekijk een overzicht rechtstreeks vanuit uw inkomsten op locatie.",
"Choose your POS provider": "Kies uw POS provider"
}],
'Products': [],
'Order': []
}
}
document.getElementsByTagName("div")[0].innerHTML = translations['nl']['Dashboard'][0]['Today\'s turnover'];

<div></div>
&#13;
答案 2 :(得分:1)
为什么这不起作用?
因为您没有使用该属性的确切名称,但由于某种原因决定添加额外的反斜杠...
答案 3 :(得分:1)
Dashboard
是Array
,而不是Object
。要访问它,您必须:
translations['n1']['Dashboard'][0]['Today\'s turnover']
或者:
translations.n1.Dashboard[0]['Today\'s turnover']
答案 4 :(得分:0)
Dashboard
是一个数组。所以请使用Dashboard[0]
translations = {
'nl': {
'Dashboard': [
{
"Today's turnover": "Omzet van vandaag",
"Get an overview directly from your receipts on location.": "Bekijk een overzicht rechtstreeks vanuit uw inkomsten op locatie.",
"Choose your POS provider": "Kies uw POS provider"
}],
'Products': [],
'Order': []
}
}
console.log(translations.nl.Dashboard[0]['Today\'s turnover']);
注意强>
[ ]
用于检索Today's turnover
密钥而不是dot(.)
符号。
您可以查看此Link以获取更多信息
答案 5 :(得分:0)
这里有一些理论支持其他好的答案。
也可以使用括号表示法访问或设置JavaScript对象的属性(有关详细信息,请参阅property accessors)。对象有时称为关联数组,因为每个属性都与可用于访问它的字符串值相关联。因此,例如,您可以按如下方式访问myCar对象的属性:
myCar['make'] = 'Ford';
myCar['model'] = 'Mustang';
myCar['year'] = 1969;
有关详情,请参阅Working with JS Objects。