问题原因

出现改问题是于javascript 整数范围问题 java 中 Long 类型 -2的63次方 - 2的63次方减去1 但是javascript整数范围确没有那么大,导致Long数字过大前端精度丢失

使用 json-bigint 解决

安装

npm i json-bigint
# 或
yarn add json-bigint
import JSONbig from 'json-bigint' // JSONbig 这个名字随意取

const instance = axios.create({
baseURL: 'xxxx',
timeout: 10000,
// 安装 json-bigint 处理long类型精度丢失问题
// 或者更改服务器代码使用String 类型 // 一般日期都是格式化传过来的,就算使用时间戳一般也看不出来 时间相差不大 主键id就不一样了,拿到id想去修改这个数据居然查不到
// 我这是id出问题了才发现的 原来一直使用的varchar 保存的雪花主键 字段使用String
// 现在使用bigint 字段使用long就出问题了
transformResponse: data => {
try {
return JSONbig.parse(data)
} catch (err) {
console.log(err)
return JSON.parse(data)
}
},
})

参考链接:

https://www.npmjs.com/package/json-bigint

https://segmentfault.com/a/1190000038551193

【BUG】axios 长数字精度丢失问题的更多相关文章

  1. JavaScript数字精度丢失问题总结

    本文分为三个部分 JS 数字精度丢失的一些典型问题 JS 数字精度丢失的原因 解决方案(一个对象+一个函数) 一.JS数字精度丢失的一些典型问题 1. 两个简单的浮点数相加 0.1 + 0.2 != ...

  2. JavaScript数字精度丢失的一些问题

    本文分为三个部分 JS 数字精度丢失的一些典型问题 JS 数字精度丢失的原因 解决方案(一个对象+一个函数) 一.JS数字精度丢失的一些典型问题 1. 两个简单的浮点数相加 1 0.1 + 0.2 ! ...

  3. php导出CSV时,超长数字精度丢失问题与前导0的字符串丢失0的问题解决

    php生成的CSV有时候会遇到两个特殊情况: 1.输出的字段中,含有超长数字(18位的数字)比方身份证:122121197410180016,就算输出时字段加上"",还是会被识别成 ...

  4. gson ajax 数字精度丢失

    ajax传输的json,gson会发生丢失,long > 15的时候会丢失0 解决方案:直接把属性为long的属性自动加上双引号成为js的字符串,这样就不会发生丢失了,ajax自动识别为字符串. ...

  5. js数字精度丢失

    http://www.cnblogs.com/snandy/p/4943138.html

  6. springboot 解决 数字长度过长导致JS精度丢失问题

    问题 在开发过程中,我们的主键字段使用了数字作为主键ID,发现数字精度丢失的问题. 上图红框是后端日志的输出. 在浏览器端F12 看到的结果如上图,数据居然自动变化,这个是数字在浏览器丢失了精度,导致 ...

  7. JavaScript数字计算精度丢失的问题和解决方案

    一.JS数字精度丢失的一些典型问题 1. 两个简单的浮点数相加:0.1 + 0.2 != 0.3 // true,下图是firebug的控制台截图: 看看java的计算结果:是不是让你很不能接受 再来 ...

  8. 将object转换成dyamic类型 解决long输出到浏览器过长精度丢失问题

    需求: 数据库使用飘雪算法保存唯一标识  是一个18位长整形 将数据输出到浏览器时出现了精度丢失问题,这是一个重大的BUG.如果没解决好整个项目都要改一遍. 讨论有三个办法 1.把所有实体 数据模型的 ...

  9. js数字位数太大导致参数精度丢失问题

    最近遇到个比较奇怪的问题,js函数里传参,传一个位数比较大,打印arguments可以看到传过来的参数已经改变. 然后查了一下,发现确实是js精度丢失造成的.我的解决方法是将数字型改成字符型传输,这样 ...

  10. 关于JavaScript中计算精度丢失的问题

    摘要: 由于计算机是用二进制来存储和处理数字,不能精确表示浮点数,而JavaScript中没有相应的封装类来处理浮点数运算,直接计算会导致运算精度丢失. 为了避免产生精度差异,把需要计算的数字升级(乘 ...

随机推荐

  1. macOS 中有什么好用的虚拟机软件?

    macOS 中有什么好用的虚拟机软件? https://www.zhihu.com/question/66366176/answer/268256386 问题:1.macOS是否有专门的虚拟机软件?或 ...

  2. 性能优化!突破性能瓶颈的尖兵CPU Cache

    大家好,我是呼噜噜,今天我们来介绍计算机的储存器之一,CPU高速缓冲存储器也叫高速缓存,CPU Cache 缓存这个专业术语,在计算机世界中是经常使用到的.它并不是CPU所独有的,比如cdn缓存网站信 ...

  3. Qt开源作品17-IP地址输入控件

    一.前言 这个IP地址输入框控件,估计写烂了,网上随便一搜索,保证一大堆,估计也是因为这个控件太容易了,非常适合新手练手,一般的思路都是用4个qlineedit控件拼起来,然后每个输入框设置正则表达式 ...

  4. 即时通讯技术文集(第19期):IM架构设计基础知识合集 [共13篇]

    为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第19 期. [-1-] 微信后台基于时间序的新一代海量数据存储架构的设计实践 [链接] htt ...

  5. 痛苦调优10小时,我把 Spark 脚本运行时间从15小时缩短到12分钟!

    周一我就有个困惑,还写成文章了:如何从 Spark 的 DataFrame 中取出具体某一行,里面提了自己猜想的几种解决方案. 没想到这么快就要面对这个问题了,我用小孩子都听得懂的例子描述一下我在干什 ...

  6. 百度高效研发实战训练营-Step1

    百度高效研发实战训练营-Step1 1 设计方法与实践介绍 1.1. 软件设计原则 (1)软件设计的目的 软件设计是为了使软件在长期范围内能够容易的进行变化. 变化:软件不是一成不变的,无论是软件本身 ...

  7. SpringCloud与Dubbo的区别

    1.SpringCloud与Dubbo的区别两者都是现在主流的微服务框架,但却存在不少差异: 初始定位不同:SpringCloud定位为微服务架构下的一站式解决方案:Dubbo 是 SOA 时代的产物 ...

  8. Angular-教程

    https://www.runoob.com/angularjs/angularjs-tutorial.html https://www.runoob.com/angularjs2/angularjs ...

  9. 项目PMP之十二项目采购管理

    项目PMP之十二--项目采购管理   一.定义:存在法律义务,需要对采购过程了解,非法律专家,合同约束 项目经理无权签署对组织有约束力的法律文件 采购模式: 分散式采购:无采购管理部门,项目经理有采购 ...

  10. SQL查询语句中for update使用注意事项

    1.join查询语句中,适用的情况下,尽量使用of关键字对必要的表上锁,而不是锁定所有表的相关行. 上述代码是在门诊医嘱签名时,为了处方签名重复操作,在签名修改数据前对涉及医嘱行进行上锁处理,for ...