JS之为何请求接口返回的Number类型数据不对?又名JS中Number型精度丢失是为哪般
js是这样的。
它number类型有个最大安全值,即2的53次方(9007199254740992),超过这个值就会出现精度丢失的问题。也就是说,运算结果超过 Math.pow(2, 53) 就会丢失精度。
而且个问题,如果出现在响应数据不符的情况下,那我们最优的解决方案只有2个:
1.后端处理返回数据中Number型数据的长度
2.转为字符串返回
js是这样的。
它number类型有个最大安全值,即2的53次方(9007199254740992),超过这个值就会出现精度丢失的问题。也就是说,运算结果超过 Math.pow(2, 53) 就会丢失精度。
而且个问题,如果出现在响应数据不符的情况下,那我们最优的解决方案只有2个:
1.后端处理返回数据中Number型数据的长度
2.转为字符串返回