【问题标题】:Add json file comments [duplicate]添加json文件注释[重复]
【发布时间】:2012-06-27 01:10:23
【问题描述】:

可能重复:
Can I comment a JSON file?

我们在项目中使用.json 文件。我们想知道是否可以将 cmets 添加到文件中并避免 JSON 解析器崩溃。

我们已尝试使用以下注释类型执行此操作,但它们都会在解析 JSON 文件时崩溃:

# I crash
// I crash
/* I crash */

是否有可接受的 JSON 文件注释形式?

【问题讨论】:

  • 在发布之前搜索 SO 问题。只是谷歌搜索“json评论”返回我上面的链接作为第一个搜索结果
  • 之前找过这个,但它没有出现在我的搜索中。

标签: php javascript json comments


【解决方案1】:

JSON 不支持 cmets——仔细想想,这很好。但是,有人制作了 JSON5 (https://github.com/aseemk/json5),它确实有用,并且可能对您有用。

值得指出的是,这只是某人的类 JSON 项目,并不是官方规范,但我猜 JSON 只是人们喜欢的类 XML 项目:)

【讨论】:

  • 它的创建者声明:“JSON5 不是 JSON 的官方继承者,现有的 JSON 解析器可能无法理解这些新特性。”。因此,如果您打算使用标准 JSON 解析器(您可能会这样做),最好不要使用它。
  • 是的,这不是我会使用的东西——但它可能是一种选择。
【解决方案2】:

标准 JSON 格式不明确支持文件 cmets。 RFC 4627 application/json

这是一种用于存储和传输数据的轻量级格式。如果评论真的很重要,您可以将其包含为另一个数据字段,例如comments: "my comment"

例如

{
    name: "Bob",
    age: 5,
    comments: "I don't like him"
}

但是,如果以这种格式使用,它实际上只是另一条数据。所以最终,你必须意识到,仅仅因为某些字段存在并不意味着你必须使用它。

【讨论】:

  • 在数据本身中存储评论真的很难看 IMO。 @AshBlue:json.org
  • @AshBlue,在 SO ,通常您不会要求声誉为 11.9 的人提供参考以备份他/她的陈述。
  • @Jashwant 声誉没有任何意义
  • @Jashwant:我有 30k 代表,但我并不总是正确的。无论如何,加上来源是一个好主意。
  • 添加了答案来源。谢谢盗贼大师。
猜你喜欢
  • 2015-01-02
  • 2022-06-23
  • 2015-09-21
  • 1970-01-01
  • 1970-01-01
  • 2021-10-02
  • 2013-04-11
  • 1970-01-01
  • 2013-04-02
相关资源
最近更新 更多