当前位置: 首页 > article >正文

js传递long类型存在精度丢失

问题

  • 后端传递了一个Long类型的数字,但是前段传递过程中数值变小了
  • java的long类型是大于number的范围的
  • 当我们通过接口将 Java 中的 long 类型的值传递到前端时,如果该值超出了 JavaScript 中 Number 类型的取值范围,JavaScript 会将其转换为科学计数法表示。这导致了 long 类型的值在前端展示时发生了变化。
  • 一定就会出现精度丢失

解决方案

方法一:将 long 类型转换为字符串

long value = 1234567890123456789L;
String stringValue = Long.toString(value);

方法二:分割 long 类型的值

long value = 1234567890123456789L;
int highBits = (int) (value >> 32);
int lowBits = (int) (value & 0xFFFFFFFFL);

参考链接

https://blog.51cto.com/u_16213404/7144246


http://www.kler.cn/a/282267.html

相关文章:

  • 从零入门激光SLAM(二十三)——direct_visual_lidar_calibration全型号激光雷达-相机标定包
  • java 读取 有时需要sc.nextLine();读取换行符 有时不需要sc.nextLine();读取换行符 详解
  • Cuda和Pytorch的兼容性
  • 购物车demo全代码-对接支付宝沙箱环境
  • 【操作系统不挂科】<Linux进程概念(4)>选择题(带答案与解析)
  • css初始化(二十三课)
  • SpringBoot日志管理 —— 解决Logback生成 “LOG_PATH_IS_UNDEFINED“ 文件夹问题
  • webpack4手动搭建Vue项目
  • 光学涡旋Talbot阵列照明器的matlab模拟与仿真
  • 深入理解 Go 语言并发编程之系统调用底层原理
  • 用宝塔部署项目到阿里云服务器访问不到的问题
  • 【TCGA】将TCGA数据移动到一个文件夹下
  • webgl入门
  • 『功能项目』着色器光透魔法球Shaders【09】
  • centos 7部署nacos 2.4.1版本单点方式
  • 在Android中在当前应用程序中安装另外一个应用程序
  • ssrf做题随记--任务计划的写入、csrf简单知识
  • 当不显示定义默认成员函数,会出现什么状况
  • 【Linux】系统管理(第六篇)
  • Vue路由—进阶篇
  • Python3.11二进制AI项目程序打包为苹果Mac App(DMG)-应用程序pyinstaller制作流程(AppleSilicon)
  • [Backbone]CAS-ViT: Convolutional Additive Self-attention Vision Transformers
  • 【SpringCloud应用框架】GateWay网关
  • 微信小程序:手机联调同一个网段无法找到本地接口
  • Kali学习(ms17-010、ms08-067漏洞复现)
  • 直线公理使初等数学一直将各异直线误为同一线 ——数集相等定义凸显初数一直将各异假R误为R