在javascript中为json-ld解析JSON

时间:2016-09-24 09:00:28

标签: javascript json json-ld

尝试解析json-ld

中的JSON

以下是JSON:

{
  "@context": "http://json-ld.org/contexts/person.jsonld",
  "@id": "http://dbpedia.org/resource/John_Lennon",
  "name": "John Lennon",
  "born": "1940-10-09",
  "spouse": "http://dbpedia.org/resource/Cynthia_Lennon"
}

所以我想这样做:

var jsonData= {
  "@context": "http://json-ld.org/contexts/person.jsonld",
  "@id": "http://dbpedia.org/resource/John_Lennon",
  "name": "John Lennon",
  "born": "1940-10-09",
  "spouse": "http://dbpedia.org/resource/Cynthia_Lennon"
};

console.log(jsonData.@context);// Error:Uncaught SyntaxError: Invalid or unexpected token
console.log(jsonData.name);// John Lenon

我如何解析@context呢?请建议。

3 个答案:

答案 0 :(得分:4)

console.log(jsonData['@context']);

有关Javascript Property accessors的更多信息:点表示法和括号表示法。

答案 1 :(得分:1)

请使用

console.log(jsonData['@id']).

不仅如此,您也不能使用以@开头的Javascript变量名称。

你可以参考这个javascript变量命名约定。 https://mathiasbynens.be/notes/javascript-identifiers

答案 2 :(得分:0)

您可以将其解析为:

var jsonData = {
    "@context": "http://json-ld.org/contexts/person.jsonld",
    "@id": "http://dbpedia.org/resource/John_Lennon",
    "name": "John Lennon",
    "born": "1940-10-09",
    "spouse": "http://dbpedia.org/resource/Cynthia_Lennon"
};

console.log(jsonData['@context']);`