我能否在以下发言中发表一些意见?Json Json (Json Json) (Json Json Json) (Json Json) Json Json (Json Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json(Json) Json (Json) Json (Json) Json(Json) Json (Json) Json如果有,如何处理?
当前回答
你的战备未变
正如已经指出的,这一黑客利用了该规格的实施。 并非所有的JSON专家都能理解这种JSON。 流派尤其会窒息。
这是一个有趣的好奇心,但你不应该真的用它来做任何事。下面是最初的答案。
我发现一个小黑客 让你可以在JSON档案中 发表评论 不影响解析 或改变数据 以任何方式代表。
似乎当声明对象字典时, 您可以用同一个键指定两个值, 而最后一个值优先 。 信不信由你, 事实证明JSON 分析者以同样的方式工作 。 这样我们就可以用它来在源头 JSON 中创建评论, 这些评论不会出现在解析对象表示中 。
({a: 1, a: 2});
// => Object {a: 2}
Object.keys(JSON.parse('{"a": 1, "a": 2}')).length;
// => 1
如果我们运用这种技术,你评论的JSON档案可能看起来是这样的:
{
"api_host" : "The hostname of your API server. You may also specify the port.",
"api_host" : "hodorhodor.com",
"retry_interval" : "The interval in seconds between retrying failed API calls",
"retry_interval" : 10,
"auth_token" : "The authentication token. It is available in your developer dashboard under 'Settings'",
"auth_token" : "5ad0eb93697215bc0d48a7b69aa6fb8b",
"favorite_numbers": "An array containing my all-time favorite numbers",
"favorite_numbers": [19, 13, 53]
}
上述代码是有效的 JSON 有效 JSON。如果你分析它, 你会得到这样的物体:
{
"api_host": "hodorhodor.com",
"retry_interval": 10,
"auth_token": "5ad0eb93697215bc0d48a7b69aa6fb8b",
"favorite_numbers": [19,13,53]
}
意思是没有评论的痕迹 也不会有奇怪的副作用
黑客快乐!
其他回答
在JSON的输出之前,我需要将评论用于调试目的。所以我把调试信息放进HTTP 信头为了避免客户被打破:
header("My-Json-Comment: Yes, I know it's a workaround ;-) ");
你不行,至少这就是我的经验json.org.
JSON的语法在那一页上被视觉化了, 没有任何关于评论的注释。
是的 你可以在JSON档案里发表评论
{
"": "Location to post to",
"postUrl": "https://example.com/upload/",
"": "Username for basic auth",
"username": "joebloggs",
"": "Password for basic auth (note this is in clear, be sure to use HTTPS!",
"password": "bloejoggs"
}
批注只是描述一组代码或配置的目的的文本。 由于您可以在 JSON 中多次指定密钥, 您可以这样做。 它在方法上是正确的, 唯一的取舍是您在字典中会有一个空密钥, 并有一些垃圾值( 您可以修饰...) 。
我在很多年前就看到了这个问题 但我只是在一个我正在研究的项目里 看到了这样的事情 我觉得这是个非常干净的方法,享受吧!
我只是为配置文件才看到这个 我不想用XML 数字或“ini”格式(没有等级,没有真正的标准,等等)或Java“Propertys”格式(如.ini)。
JSON可以做他们所能做的一切,但是它不那么多动词,更易为人读——在许多语言中,剖析器很容易,而且无处不在。它只是一棵数据树。但它只是一棵数据树。但是,用“默认”的配置等文件来记录“默认”的配置和类似内容往往是必要的。配置从来不是“完整的文档 ” , 而是需要时可以读取的保存数据树。
我想用得着"#": "comment"
为了"活人"JSON
纯粹的答案是否 无.
但有些编辑和平台利用变通办法向JSON提供评论。
1今天,大多数编辑都有内在的选择和扩展,以补充对JSON文件的评论。 (例如: - VS 代码还有一个带有评论的JSON。(jsonc) mode
《VS法典》也有很好的展期)
2一些平台为补充评论(简简json)提供了内在途径。 (例如:- 在消防基地,我可以评论firebase.json
暂时没有问题。
{
"hosting": {
"headers": [
/*{
"source": "*.html",
"headers": [
{
"key": "Content-Security-Policy",
"value": "default-src 'self' ..."
}
]
},*/
]
}
}
3。在您自己的 JSON 解析方法中,您可以设置一个预定义的密钥名称作为注释。
包括:-
{
"comment" : "This is a comment",
"//" : "This also comment",
"name" : "This is a real value"
}
推荐文章
- 在构建中编写注释的语法是什么?gradle文件?
- 将对象序列化为JSON
- node.js TypeError:路径必须是绝对路径或指定根路径到res.sendFile[解析JSON失败]
- Python json。loads显示ValueError:额外数据
- JSON省略了Infinity和NaN;JSON在ECMAScript中的状态?
- console.log(result)输出[object对象]。我如何得到result。name?
- Java注释中的/**和/*
- java8 LocalDate Jackson格式
- 在Go中使用JSON Marshal的小写JSON键名
- jQuery发布JSON
- 如何将FormData (HTML5对象)转换为JSON
- 我如何从资产文件夹解析一个本地JSON文件到一个ListView?
- 使用Python将XML转换为JSON ?
- 在ASP中设置Access-Control-Allow-OriginNet MVC -最简单的方法
- JWT vs cookie用于基于令牌的身份验证