【发布时间】:2013-06-17 22:52:21
【问题描述】:
$.parseJSON("1") 返回1。我希望这会引发错误,因为这看起来不像是有效的 JSON 格式:
{
"firstName": "John"
}
为什么1 解析正确?有没有办法让它抛出一个错误。
【问题讨论】:
-
Number是一种原始数据类型。如果值是原始数据类型,JSON有效 -
@Sushanth——不是根据 jslint.com。这是一个有趣的问题
-
我猜它是有效的,因为它也适用于
JSON.parse("1") -
json.org 上的任何铁路图都是有效的 JSON,应该可以通过
parseJSON的良好实现来解析。 -
@FishBasketGordo 这不是真的。 JSON 解析器只需要解析 JSON 文本。 JSON 文本是一个序列化的对象或数组。 JSON 值本身不会生成 JSON 文本。有关更多信息,请参阅 RFC:ietf.org/rfc/rfc4627.txt