我能否在以下发言中发表一些意见?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.parse
方法。所以我找到了一个解决方案: 我们可以在JSON.parse周围取代或修补猴子。
注:仅用节点js测试;-)
var oldParse = JSON.parse;
JSON.parse = parse;
function parse(json){
json = json.replace(/\/\*.+\*\//, function(comment){
console.log("comment:", comment);
return "";
});
return oldParse(json)
}
JSON 文件 :
{
"test": 1
/* Hello, babe */
}
叹气,为什么不只添加字段,例如:
{
"note1" : "This demonstrates the provision of annotations within a JSON file",
"field1" : 12,
"field2" : "some text",
"note2" : "Add more annotations as necessary"
}
只要确保你的"笔记本"名字 不要与任何真正的田地冲突。
JSON的作者想让我们在JSON里加入评论,链接链接如果JSON应该有评论的话,为什么不将其标准化,让JSON专家来做这项工作?我不同意逻辑,但不幸的是,这是标准。使用由其他人建议的YAML解决方案是好的,但它需要依赖图书馆。
如果您想要删除批注, 但不想有库依赖性, 这里是一个双线解决方案, 适用于 C++ 风格的批注, 但可以调整为其它 :
var comments = new RegExp("//.*", 'mg');
data = JSON.parse(fs.readFileSync(sample_file, 'utf8').replace(comments, ''));
请注意,只有在您可以确信JSON数据不含评论发起人(例如('/'))的情况下,才能使用这一解决办法。
实现 JSON 解析、 解开评论和不增加图书馆的另一种方式是用 JavaScript 解释器来评价 JSON 。 当然,这个方法的告诫是, 您只想要评估未污染的数据( 不可信用户- 输入 ) 。 这是在 Node.js 中的一个例子 -- 另一个警告是, 以下示例只读过一次数据, 然后它会被缓存 :
data = require(fs.realpathSync(doctree_fp));
json speces 不支持评论, 但是您可以用键来写评论来解决这个问题, 像这样 。
{
"// my own comment goes here":"",
"key1":"value 1",
"// another comment goes here":"",
"key 2": "value 2 here"
}
我们使用评论文本作为关键, 以确保它们( 几乎) 是独一无二的, 它们不会打破任何解析器。 如果有些评论不是独一无二的, 请在结尾处添加随机数字 。
如果您需要分析任何处理中的评论, 比如剥除这些评论, 您可以用文字填充注释值, 表示它是一个注释 , 比如 :
{
"// my own comment goes here" : "_comment",
"key1":"value 1",
"// another comment goes here" : "_comment",
"key 2": "value 2 here"
}
以此方式, 分析者可以找到所有的评论并处理它们 。
你不行,至少这就是我的经验json.org.
JSON的语法在那一页上被视觉化了, 没有任何关于评论的注释。
推荐文章
- 查询JSON类型内的数组元素
- 将JSON字符串转换为HashMap
- 将JsonNode转换为POJO
- Json_encode()转义正斜杠
- 如何写一个JSON文件在c# ?
- 在序列化和反序列化期间JSON属性的不同名称
- 为什么PHP的json_encode函数转换UTF-8字符串为十六进制实体?
- Ajax会调用什么样的响应,比如'for (;;);{json data}的意思?
- 在JavaScript中将JSON字符串解析为特定对象原型
- 使用Jackson将JSON字符串转换为漂亮的打印JSON输出
- jQuery。由于转义了JSON中的单引号,parseJSON抛出“无效JSON”错误
- 用c#解析JSON
- 如何合并2 JSON对象从2个文件使用jq?
- 在VS Code中禁用“Comments are not allowed In JSON”错误
- 如何在Kotlin解析JSON ?