返回值为```JSON```对象。
object
JSON.parse(s)
JSON.parse(s, safeStr)
该参数为需要解码(解析)的```JSON```字符串。
s
true
string
当该参数设置为```true```时,解析过程中若遇到可能超出精度范围的数值,会将其以字符串形式返回,以避免精度丢失或溢出问题。
safeStr
false
bool
```javascript
function main() {
let s1 = '{"num": 8754613216564987646512354656874651651358}'
Log("JSON.parse:", JSON.parse(s1)) // JSON.parse: {"num":8.754613216564987e+39}
Log("JSON.parse:", JSON.parse(s1, true)) // JSON.parse: {"num":"8754613216564987646512354656874651651358"}
let s2 = '{"num": 123}'
Log("JSON.parse:", JSON.parse(s2)) // JSON.parse: {"num":123}
Log("JSON.parse:", JSON.parse(s2, true)) // JSON.parse: {"num":123}
}
# 可以使用Python的第三方库处理大数值数据。
// 可以使用其它方案处理。
解码(解析)一个包含大数值的JSON
字符串。
JSON.parse()
函数可以正确解析包含有较大数值的JSON字符串,设置safeStr
参数为真值,会将较大的数值解析为字符串类型。
对于safeStr
参数位,也支持作为reviver
参数。即:一个转换结果的函数,将为对象的每个成员调用此函数,可以查阅相关资料,不再赘述。
仅支持JavaScript语言。
回测系统中不支持JSON.parse()
函数的safeStr
参数功能。