问题分析
- 在做换热站项目的时候,接受后台传递数据时候,id键为大于17位的long类型
- 前端使用打印出来数据大于17位后面就自动补0了
问题复现
// 源数据
const a = 123456789101112134
console.log(a)
// 输出 123456789101112130
解决方案
- 不是json数据,直接接受到数据转换为string类型就可以
- json数据,需要使用json-bigint直接转换就可以
// npm 或者 cdn引入
// npm
import * as JSONbig from "json-bigint";
const a = '{"b":123456789101112130}'
const b = JSONbig.parse(a);
console.log(b);
- 让后台统一转换 返回string数据
其他
- 关于其他问题(精度丢失问题),更多的参考 ld246.com/article/157…