我仔细阅读了JSON描述http://json.org/,但我不确定我是否知道这个简单问题的答案.哪些字符串是最小可能的有效JSON?
"string" 字符串是有效的JSON吗?42 是简单的数字有效JSON?true 布尔值是有效的JSON吗?{} 空对象是有效的JSON吗?[] 空数组是一个有效的JSON吗?以下是有效的JSON文本,还是它们的顶级值必须是数组或对象?
4.0
Run Code Online (Sandbox Code Playgroud)
"Hello World"
Run Code Online (Sandbox Code Playgroud)
true
Run Code Online (Sandbox Code Playgroud)
过去的相关问题,例如什么是最小有效JSON?,这个简单的字符串被认为是有效的JSON吗?已经得出结论,他们不是.这是基于RFC-4627中 JSON格式的描述,其中指出:
2. JSON语法
JSON文本是一系列标记.标记集包括六个结构字符,字符串,数字和三个文字名称.
JSON文本是序列化对象或数组.
Run Code Online (Sandbox Code Playgroud)JSON-text = object / array这些是六个结构特征:
[...]
但是,RFC-4627状态声明它"未指定任何类型的Internet标准".相反,JSON的官方标准是最近发布的ECMA-404.与RFC-4627不同,ECMA-404对有效JSON文本的描述不包括任何对象或数组的要求.例如,与上面引用最相似的部分缺少该要求:
4 JSON文本
JSON文本是由符合JSON值语法的Unicode代码点形成的标记序列.该组令牌包括六个结构标记,字符串,数字和三个文字名称标记.
六个结构代币:
[...]
鉴于这个新规范,编码的非数组非对象顶级值是否被认为是有效的JSON文本?