为什么JSON.parse不能用于"23232323"?

Nul*_*ify 2 javascript json

我有这个领域

text = "23232323."
Run Code Online (Sandbox Code Playgroud)

为了验证我想得到这样的 23232323.

我正在尝试JSON.parse(text)给予SyntaxError: JSON.parse: missing digits after decimal point

并且eval(text)正在给予23232323

我该如何解决?

Den*_*ret 10

它无法解析,因为与流行的看法相反,JSON是一种强烈定义的语言,你不能简单地放置任何你可以评估的东西.

以下是数字的定义方式:

在此输入图像描述

(见json.org)

你可以通过删除最后的点来解决问题,或者更好的是,不要把它放在第一位.当然,如果您信任来源,您也可以简单地使用eval('('+yourstring+')').