我有一个名为gameupdater.json的json文件
gameupdater.json:
{ "730":{
"success":true,
"data":{
"price_overview":{
"currency":"EUR",
"initial":1399,
"final":937,
"discount_percent":33
}
}
}
}
我有一个具有以下代码的javascript文件:
var updater = JSON.parse(fs.readFileSync('gameupdater.json'));
var jsonstring = JSON.stringify(updater, null, 4);
var num = updater.730.data.priceoverview.initial;
console.log(num);
但是无论何时我在CMD中运行它(node bot.js)。
它没有给我我想要的东西,即1399。
相反,它给了我这个错误:
var num = updater.730.data.priceoverview.initial;
^^^^
语法错误:意外的数字
哦,我敢肯定,更改内容将很困难,因为将从该网站上自动下载此数组:
http://store.steampowered.com/api/appdetails?appids=730
最佳答案
您不能在点语法中使用数字。您需要使用大括号语法,并将其作为字符串访问:
updater["730"].data...
或者,如果属性完全是一个数字,则也可以使用一个裸数字,但同样,它必须在方括号内:
updater[730].data...