json – 可以在JSON中使用评论吗?

我可以在JSON文件中使用评论吗?如果是这样,怎么样?


没有。

JSON应该都是数据,如果包含评论,那么它也会是数据。

您可以使用称为"_comment"(或某些)的指定数据元素,这些数据元素将被使用JSON数据的应用程序忽略。

您可能会更好地在生成/接收JSON的流程中发表评论,因为他们应该知道JSON数据会提前发布什么,或者至少了解它的结构。

但是,如果您决定:

{
   "_comment": "comment text goes here...",
   "glossary": {
      "title": "example glossary",
      "GlossDiv": {
         "title": "S",
         "GlossList": {
            "GlossEntry": {
               "ID": "SGML",
               "SortAs": "SGML",
               "GlossTerm": "Standard Generalized Markup Language",
               "Acronym": "SGML",
               "Abbrev": "ISO 8879:1986",
               "GlossDef": {
                  "para": "A meta-markup language, used to create markup languages such as DocBook.",
                  "GlossSeeAlso": ["GML", "XML"]
               },
               "GlossSee": "markup"
            }
         }
      }
   }
}

,表单的评论//…/*…*/JSON中不允许。这个答案基于:

  • http://www.json.org
  • RFC 4627application/jsonJavaScript对象表示法的媒体类型(JSON)
  • RFC 7159 JavaScript对象表示法(JSON)数据交换格式 – 废止时间:4627,7158

包括评论,如果你选择; 在解析或传输之前,用缩小器去除它们。

我刚刚发布了JSON.minify(),它从JSON块中删除注释和空白,并使其可以被解析为有效的JSON。所以,你可以像这样使用它:

JSON.parse(JSON.minify(my_str));

当我发布它时,我反应过度,甚至不同意它的想法,所以我决定写一篇全面的博客文章,讨论为什么评论在JSON中有意义。它包括来自JSON创建者的这个值得注意的评论:

假设您使用JSON来保存想要注释的配置文件。继续并插入你喜欢的所有评论。然后在将它交给JSON解析器之前通过JSMin管理它。- 道格拉斯克罗克福德,2012

希望对那些不同意为什么JSON.minify()可能有用的人有帮助。

Tags:,

添加评论

友情链接:蝴蝶教程