现象
java中的大数字比如18/19位的整数(long),转为json,输出到页面后,就出现精度丢失,如果数字再大些就会出现科学计数法。
这两个问题都不是json工具包(比如Gson)的问题,而是由于js存储大数字丢失精度引起。
1、精度丢失例子:当js表达整数时,最多表达15位数字,如果超过15位就会出现精度丢失问题。
援引js文档:
精度
整数(不使用小数点或指数计数法)最多为 15 位。
最后几位都变为0,丢失精度
var x = 1234567890123456999;
console.log(x);
输出结果:1234567890123457000
2、数字再大一些就会出现,科学计数法
var x = 123456789012345699999999;
console.log(x);
输出结果:1.234567890123457e+23
解决办法
后台属性由数字类型改为字符串,转为json,传到前台就不会丢失了。
忍者必须死34399账号登录版 最新版v1.0.138v2.0.72
下载勇者秘境oppo版 安卓版v1.0.5
下载忍者必须死3一加版 最新版v1.0.138v2.0.72
下载绝世仙王官方正版 最新安卓版v1.0.49
下载Goat Simulator 3手机版 安卓版v1.0.8.2
Goat Simulator 3手机版是一个非常有趣的模拟游
Goat Simulator 3国际服 安卓版v1.0.8.2
Goat Simulator 3国际版是一个非常有趣的山羊模
烟花燃放模拟器中文版 2025最新版v1.0
烟花燃放模拟器是款仿真的烟花绽放模拟器类型单机小游戏,全方位
我的世界动漫世界 手机版v友y整合
我的世界动漫世界模组整合包是一款加入了动漫元素的素材整合包,
我的世界贝爷生存整合包 最新版v隔壁老王
我的世界MITE贝爷生存整合包是一款根据原版MC制作的魔改整