给出JSON文档
{"percentageAmount": .01}
由JSONLint.com运行会导致错误:
Parse error on line 2:
..."percentageAmount": .01}
-----------------------^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '['
另一方面,这是有效的:
{"percentageAmount": 0.01}
如果将代码作为JavaScript文字分配给变量,则代码会被正确解析,但当然对于不具有JSON规范的JavaScript变量,有很多东西都可以。
为什么这是针对JSON规范的?
答案 0 :(得分:10)
答案 1 :(得分:7)
没有前导零的小数是否有效JSON?
number = [ minus ] int [ frac ] [ exp ]
decimal-point = %x2E ; .
digit1-9 = %x31-39 ; 1-9
e = %x65 / %x45 ; e E
exp = e [ minus / plus ] 1*DIGIT
frac = decimal-point 1*DIGIT
int = zero / ( digit1-9 *DIGIT )
minus = %x2D ; -
plus = %x2B ; +
zero = %x30 ; 0
必填号码的唯一部分是int
,其定义为zero
或1-9
,后跟任意数量的数字。
所以JSON Lint是正确的。
为什么这是针对JSON规范的?
据我所知,作者以这种方式定义它的原因没有在任何地方记录。