欢迎!请参阅 关于 页面了解有关如何使用此页面的更多信息。
数字字面量的处理不按 JSON 规范执行。
示例
(require '[clojure.data.json :as json]) (json/read-str "123abc")
返回数字 1232。根据规范,这实际上应该是一个无效的文本并抛出异常
!http://json.org/number.gif!
评论者:alex+import
(我假设描述中有个别字错误 - 返回的是 123,而不是 1232)
不仅仅是字面值,任何输入的末尾的非空白字符都被默默地忽略,应该被拒绝
(json/read-str "{}xxx") => {} (json/read-str "[]yyy") => [] (json/read-str "\"\"zzz") => "")
注意:此行为与文档字符串("从 ... 读取单个 JSON 数据项")一致。
在2.4.0版本中,即使JIRA问题未更新,这也将抛出异常。其他数据类型仍然允许额外的输入,如文档字符串中所述。