JS parseInt()和Number的精度丢失问题
2018-07-04 10:59
597 查看
JS整形parseInt()和Number的精度问题
1.js 所能表示的最大整数
Math.pow(2, 53) //2的53次方 结果:9007199254740992
console.log(Math.pow(2, 53)); console.log(Math.pow(2, 53)+1); 结果:9007199254740992 9007199254740992
Number的精度共十六位,超出这个说+1也会造成精度不准确
Math.pow(2, 53)+1 ===9007199254740992
同理parseInt()将字符串转换成整形也不能超出这个数
var str = '9007199254740993'; console.log(parseInt(str)); 结果:9007199254740992
所以在前后台交互中将超过这个数据的值转为字符串处理
阅读更多相关文章推荐
- js加减乘除丢失精度问题解决方法 你试一下12*1.3就知道了
- js数字位数太大导致参数精度丢失问题
- js加减乘除丢失精度问题
- [JS] js数字位数太大导致参数精度丢失问题
- JS中toFixed()方法引起的精度丢失的问题解决
- js加减乘除丢失精度问题解决方法
- js处理浮点型的bug问题--js精度丢失
- js数字位数太大导致参数精度丢失问题
- java的long类型转为json格式后,js中精度丢失问题
- js中小数运算精度丢失问题
- JS浮点类型运算精度丢失问题解决办法
- 关于数据序列化(5),定制FastJSON序列化(解决Java大Long类型js的Number接收丢失数据的问题,不序列化某些属性)
- JS的浮点数计算精度丢失问题解决方案
- js加减乘除丢失精度问题解决方法
- js加减乘除丢失精度问题解决方法
- 关于js number 的精度问题
- JS浮点类型运算精度丢失问题解决办法
- JS 浮点数四则运算精度丢失问题
- js 浮点运算出现的精度丢失问题