我在尝试使用星号作为对象的键引用时遇到错误。我尝试过格式化不同的方法,但总是得到同样的错误:
SyntaxError: missing name after . operator
这是我的代码,其中包含从维基百科api ...
呈现的对象有问题的一行是:
的console.log(shortcut.langlinks [索引] *);
var wp = {
"query":{
"pages":{
"3823":{
"pageid":3823,
"ns":0,
"title":"Binary",
"extract":"<p><b>Binary</b> means <i>composed of two pieces or two parts</i> and may refer to:</p>\n\n",
"links":[{
"ns":0,"title":"Binary-coded decimal"},{
"ns":0,"title":"Binary (Assemblage 23 song)"},{
"ns":0,"title":"Binary code"}],
"langlinks":[{
"lang":"de","*":"Bin\u00e4r"},{
"lang":"fr","*":"Binaire"},{
"lang":"ur","*":"\u062a\u062b\u0646\u06cc\u06c1"}]
}
}
}
};
var page_key = Object.keys( wp['query']['pages'])[0];
var shortcut = wp['query']['pages'][page_key];
function translation() {
if (shortcut.langlinks.length > 0){
for (var index in shortcut.langlinks){
if (shortcut.langlinks[index].lang == 'de'){
console.log(shortcut.langlinks[index].*);
}
}
} else {
console.log("There are no language links.");
}
}
如何设置代码格式以使星号显示为键值? 谢谢。
答案 0 :(得分:5)
您也可以使用括号:
shortcut.langlinks[index]['*']
答案 1 :(得分:3)
如果要访问名称也是identifier的有效名称的属性,可以使用点语法:shortcut.langlinks
(langlinks
是有效的标识符名称)。< / p>
当属性名称不是有效的标识符名称时,您必须改为使用尖括号语法:langlinks[index]["*"]
(*
不是有效的标识符名称,因为它不以“$”开头, “_”,或任何归类为字母的Unicode字符。)
答案 2 :(得分:1)
您可以使用:
console.log(shortcut.langlinks[index]['*']);