簡體   English   中英

JSON 中的“@”是什么意思?

[英]What does '@' mean in JSON?

我正在使用以下庫

https://github.com/Leonidas-from-XIV/node-xml2js

將 XML 轉換為 JSON。 轉換后 console.log 產生以下內容

{ '@':
   { RaceDayDate: '2012-03-15T00:00:00',
     Year: '2012',
     Month: '3',
     Day: '15',
     DayOfTheWeek: 'Thursday',
     MonthLong: 'March',
     IsCurrentDay: '1',
     IsPresaleMeeting: '0',
     ServerTime: '2012-03-15T19:48:47.840' },
  PresaleRaceDate: [ { '@': [Object] }, { '@': [Object] }, { '@': [Object] } ],
  Meeting:
   [ { '@': [Object], Pool: [Object], Race: [Object] },
     { '@': [Object], Pool: [Object], Race: [Object] },
     { '@': [Object], Pool: [Object], Race: [Object] },

@ 是什么意思,假設數據存儲在名為“result”的變量中,訪問 RaceDayDate、Year、Month 等的語法是什么? 結果。@ 不起作用

'@'和其他字符串一樣只是一個字符串。 在 JavaScript 中,您可以使用

result['@']

另請注意,輸入不是有效的 JSON,因為它在許多字典鍵和Object周圍缺少引號,使用單引號而不是雙引號並以逗號結尾。

嘗試result['@'].RaceDayDate

我不確定這是否與此示例相關,但我目前正在與允許您傳遞 xml 或 json 的 API 集成; 在 json 消息中,在該消息的 xml 版本中作為屬性存儲的任何字段都以“@”字符為前綴 - 我認為這是因為 json 被轉換為 xml 以進行處理以及它們使用的任何工具這使用@ 來區分元素和屬性。

正如上面提到的“Clarkeye”,我有一個帶有“@”前綴的標簽(下面給出的示例數據)。 這些是該消息的 xml 版本中的屬性。 我懷疑轉換工具添加了這個前綴。 json 示例數據

{
  "@context": "\/v1\/contexts\/Book",
  "@type": "Recipe",
  "id": "12136",
  "note": [
    {
      "@id": "\/v1\/terms\/331",
      "@type": "SQL",
      "id": 331,
      "display": "SQL",
      "taxonomy": "post_tag"
    }
  ]

它對 JSON 沒有特殊意義。

此特定數據將其用作密鑰字符串。 您必須知道數據的含義才能找出原因。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM