【问题标题】:Does JSON allow positive sign for numbers?JSON 是否允许数字的正号?
【发布时间】:2014-10-31 03:55:32
【问题描述】:

在检查 JSON.org 铁路(语法)定义后,数字定义提供了负号 (-),但忽略了正号 (+) - 这是图表中的遗漏,还是 JSON 不允许正号(+) 表示数字?

指数允许可选的正 (+) 和负 (-) 符号,因此为数字提供 (+) 的识别似乎节省很少...

【问题讨论】:

  • 你想做什么?
  • 作为从 Web API 发送/接收 JSON 的项目的一部分,我正在检查 JSON 规范。令我感到惊讶的是,该规范不允许对数字使用明确的正 (+) 号。
  • 很明显,正数不需要任何符号。

标签: json grammar number-formatting


【解决方案1】:

不,它没有。

除了json.org上的语法,JSON定义也由

关于有符号数的符号,它们都是一致的。前者有

JSONNumber :: -? DecimalIntegerLiteral JSONFraction?指数部分?

后者说

数字 = [ 减号 ] int [ frac ] [ exp ]

此外,所有这些规范都允许在指数中使用可选的加号,但没有一个允许在数字文字之前使用加号。

【讨论】:

  • Btw golang 的 json.Marshall 函数将无法尝试解释带有前面加号的 int
猜你喜欢
  • 1970-01-01
  • 2013-12-12
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
  • 2017-09-15
  • 2010-12-16
相关资源
最近更新 更多