Node.js:用“@”符号解析 json-ld / JSON

Node.js: Parsing a json-ld / JSON with "@"-symbol

我有一个 JSON 看起来像这样:

{"marker":[{"@attributes":{"start":"Im Berge",
"finish":"Eichelberger Stra\u00dfe"
...

我正在尝试解析“@attributes”中的属性,但还没有找到方法。到目前为止我尝试了什么:

const fs = require('fs');  
var jsonObj = JSON.parse(fs.readFileSync('route1.json', 'utf8'));  
console.log(jsonObj['@attributes']);

也尝试了与

相同的方法
console.log(jsonObj.marker['@attributes']);

这两个都不起作用。我知道这应该是一个 json-ld 并且我应该用 ['@attributes'] 解析带有“@”符号的对象,但无论哪种方式我总是得到错误或未定义.我从我想使用的 API 那里得到了 JSON,它在那里多次,所以我没有办法绕过它。

.marker 是一个 array 所以:

console.log(jsonObj.marker[0]['@attributes']);

但您可能想遍历它:

jsonObj.marker.forEach(marker => console.log(marker['@attributes']));

您可以 require 一个 JSON 文件,而不是 JSON.parse & fs.readFileSync

var jsonObj = require('./route1.json');