【问题标题】:What does '@' mean in JSON?JSON 中的“@”是什么意思?
【发布时间】:2012-03-15 09:54:45
【问题描述】:

我正在使用以下库

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 xml json


    【解决方案1】:

    '@' 和其他字符串一样。在 JavaScript 中,您可以使用

    result['@']
    

    另请注意,输入不是有效的 JSON,因为它在许多字典键和 Object 周围缺少引号,使用单引号而不是双引号并以逗号结尾。

    【讨论】:

      【解决方案2】:

      试试result['@'].RaceDayDate

      【讨论】:

        【解决方案3】:

        它对 JSON 没有特殊意义。

        此特定数据将其用作密钥字符串。您必须知道数据的含义才能找出原因。

        【讨论】:

          【解决方案4】:

          我不确定这是否与此示例相关,但我目前正在与允许您传递 xml 或 json 的 API 集成;在 json 消息中,作为属性存储在该消息的 xml 版本中的任何字段都以“@”字符为前缀 - 我认为这是因为 json 被转换为 xml 以进行处理以及它们使用的任何工具这使用 @ 来区分元素和属性。

          【讨论】:

            【解决方案5】:

            正如上面提到的“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"
                }
              ]
            

            【讨论】:

              猜你喜欢
              • 2010-10-24
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2011-08-12
              • 2017-06-11
              • 2018-03-05
              • 2023-03-27
              相关资源
              最近更新 更多