
后端id精度丢失问题:前端显示与后端不一致
在前后端数据交互中,后端返回的大型id可能由于精度丢失问题,导致前端打印显示的数据与后端实际数据不一致。
后端解决方案
- 将long类型id转换为string类型。可以使用long.tostring()方法。
前端解决方案
立即学习“前端免费学习笔记(深入)”;
- 使用json-bigint库。可以在npm中安装:npm install json-bigint
- 在json解析时,使用withbigint()方法强制解析为bigint类型。例如:
const data = JSON.parse(response, reviveWithBigint);
function reviveWithBigint(key, value) {
if (typeof value === 'string' && /^-{0,1}\d+$/.test(value)) {
return BigInt(value);
}
return value;
}以上解决方案可以有效解决id精度丢失问题,确保前端打印的数据与后端实际数据保持一致。










