JSON.parse导致数字精度丢失末尾变成0问题解决方案

文章讲述了在处理JSON.parse时遇到的精度问题,当遇到超长数字会丢失精度。通过引入并使用json-bigint库,可以将超出安全范围的数字转换为字符串显示,解决此问题。
摘要由CSDN通过智能技术生成

        在写一个JSON预览小工具时发现JSON.parse遇到超长数字时会导致精度丢失,超出了安全范围之后的数会被替换为0,比如1275957393877729571在JSON.parse之后会被变成1275957393877729000。其实解决方法很简单,只需要引入json-bigint库进行parse即可。

step1.引入json-bigint。

npm install json-bigint

step2.使用json-big进行parse。

// 引入json-bigint
const JsonBig = require('json-bigint')({"storeAsString": true});
const jsonString = '{"name":1290257393877729571}';
// 调用parse进行转换
let convertObj=JsonBig.parse(jsonString);
console.log(convertObj);

完成如上操作,超出安全范围的数字即可被转换为字符串正常显示了。

  • 20
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值