JSON.parse函数是ECMAScript标准内建对象JSON的方法,用于解析JSON字符串。发明者量化交易平台对其进行了扩展,增加了一个safeStr参数。
返回解析后的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参数功能。