我能否在以下发言中发表一些意见?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如果有,如何处理?
当前回答
如果您正在使用 PHP, 您可以使用此函数搜索并删除 JSON 字符串中的 / / / * 键入批注, 然后将其解析成对象/ 数组 :
function json_clean_decode($json, $assoc = true, $depth = 512, $options = 0) {
// search and remove comments like /* */ and //
$json = preg_replace("#(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|([\s\t]//.*)|(^//.*)#", '', $json);
if(version_compare(phpversion(), '5.4.0', '>=')) {
$json = json_decode($json, $assoc, $depth, $options);
}
elseif(version_compare(phpversion(), '5.3.0', '>=')) {
$json = json_decode($json, $assoc, $depth);
}
else {
$json = json_decode($json, $assoc);
}
return $json;
}
希望这有帮助!
其他回答
考虑使用雅姆勒它几乎是JSON的超集(几乎所有有效的JSON都是有效的YAML),它允许评论。
无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无JSON曾经支持评论,但被滥用,并被从标准中删除。
从杰森的创造者:
我删除了JSON的评论,因为我看到有人利用他们来维持分解指令,这种做法会破坏互操作性。 我知道,缺乏评论会使一些人感到悲哀,但不应该如此。Douglas Crockford,2012年
官方的JSON现场在JSON.org (JSON.org)JSON 被定义为标准标准标准标准标准总是有请愿程序要求修订标准,由于若干原因,不可能在JSON标准中增加说明。
JSON在设计上是取代XML的简单反向工程(人类分割的)替代物。 它被简化到无需附加说明的地步。 它甚至不是标记语言。 目标是稳定性和互操作性。
任何理解目标方向“has-a”关系的人都可以理解任何 JSON 结构, 这就是整个点。 它只是带有节点标记( 键/ 价值对) 的定向环绕图( DAG ) , 几乎是一个通用的数据结构 。
只需说明“//这些是DAG标记”。 关键名称可以按要求提供信息,允许任意的语义性。
任何平台都可以用几行代码分析 JSON 。 XML 需要复杂的 OO 库, 在许多平台上都是不可行的 。
说明只会降低JSON的互操作性。 没有什么可以补充的,除非你真正需要的是一种标记语言(XML ) , 并且不关心您持续的数据是否容易解析。
但是JSON的创建者也指出,
继续插入您喜欢的所有评论。 然后通过 JSMIN 发送到您的 JSON 分析者 。Douglas Crockford,2012年
如果您正在使用 NewtonSoft.Json 库和 ASP.NET 来读取/删除您在 JSON 内容中可以使用 :
/"名字": "字符串"
//“ id” : 整数
或
* 这是
注释示例 */
PS :单行评论仅以6+版本的牛顿软 Json 支持。
给那些无法思考的人的附加说明:我在一个 ASP.NET 网络应用程序中使用了用于基本设置的 JSON 格式。 我读了文件, 将其转换成设置对象, 与 Newtonoft 库一起使用, 必要时使用 。
我更喜欢在JSON档案中写关于每个设置的评论, 我真的不在乎JSON格式的完整性, 只要我使用的图书馆可以使用。
我认为这比创建单独的“ 设置. README” 文件并解释其中的设置更容易使用/ 理解” 。
如果你对这种用法有问题, 对不起, 精灵从灯里出来了。 人们会发现JSON格式的其他用法, 您对此无能为力 。
JSON并不支持本地的评论, 但您可以自己制作解码器或至少预处理器来删除评论, 这完全没问题(只要您只是忽略评论, 不使用它们来指导您的应用程序如何处理 JSON 数据 ) 。
JSON没有评论。 JSON 编码器必须输入输出评论。 JSON 编码器可能接受和忽略评论。
评论绝不应被用来传递任何有意义的信息。这就是JSON的目的。
JSON的理念是提供各种应用之间的简单数据交换,这些应用通常是基于网络的,语言是JavaScript。
但是,它实际上不允许这样的评论, 但是,作为数据中的名字/价值对之一通过评论肯定行得通, 尽管数据显然需要被忽略或由解析代码具体处理。
尽管如此,但JSON档案中并没有包含传统意义上的评论的意图。它应该只是数据而已。
看一看JSON JSON 网站以了解更多细节。
推荐文章
- 在ASP中设置Access-Control-Allow-OriginNet MVC -最简单的方法
- JWT vs cookie用于基于令牌的身份验证
- JQ:选择多个条件
- 什么是HTTP中的“406-不可接受的响应”?
- 有没有办法注释掉.ASPX页面中的标记?
- ASP。NET Core返回带有状态码的JSON
- 我如何添加环境变量启动。VSCode中的json
- PostgreSQL返回JSON数组的结果集?
- HTTP POST在Java中使用JSON
- 如何指定杰克逊只使用字段-最好是全局
- jQuery为ajax请求返回“parsererror”
- 检查Postgres JSON数组是否包含字符串
- 将bash变量传递给jq
- 在$.ajax()中将数组传递给ajax请求
- 转换JSON字符串到c#对象