我有一个名为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...

09-19 09:50