雪花算法生成的ID到前端后精度丢失

news/2025/2/1 3:38:09/

最近将id改为雪花算法方式生成,后端使用雪花算法生成id,在返回给前端的时候没有问题,但是在前端使用id反查数据的时候始终查询不到数据。

经过数据跟踪最终定位到是浏览器的问题,因为浏览器无法解析太长的数字,最终导致id精度丢失。

在浏览器的console中验证,可以看到最后几位发生了变化。

例如生成的id是1594605819398193154

而前端展示的为1594605819398193200

这是因为JS是弱语言,前端接收数字类型参数为number

最大接收长度为16位,超出长度则会丢失精度

而JAVA的Long类型长度为19位,所以传输到前端的后三位精度丢失

所以我们解决该问题的思路就是:把java里的Long类型转换为String返回给前端


http://www.ppmy.cn/news/1085223.html

相关文章

Linux命令200例:Dump用来做文件系统备份

🏆作者简介,黑夜开发者,CSDN领军人物,全栈优质新星创作者✌。CSDN专家博主,阿里云社区专家博主,2023年6月csdn上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师&#xff0…

[国产MCU]-W801开发实例-用户报文协议(UDP)数据接收和发送

用户报文协议(UDP)数据接收和发送 文章目录 用户报文协议(UDP)数据接收和发送1、UDP简单介绍2、W801的UDP创建逻辑2.1 UDP使用步骤2.2 代码实现1、UDP简单介绍 用户数据报协议 (UDP) 是一种跨互联网使用的通信协议,用于对时间敏感的传输,例如视频播放或 DNS查找。它通过在数…

windows主机和Ubuntu虚拟机共享设置

参考文章 Ubuntu Linux 与主机共享文件夹 vim 修改文件出现错误 “ E45: ‘readonly’ option is set (add to override)“ vim退出时报错“E212: Cant open file for writing”的解决办法 VMware 安装后,安装Ubuntu 20.04一路顺利。 1,在VMware设置…

pytest自动化测试两种执行环境切换的解决方案

目录 一、痛点分析 方法一:Hook方法pytest_addoption注册命令行参数 1、Hook方法注解 2、使用方法 方法二:使用插件pytest-base-url进行命令行传参 一、痛点分析 在实际企业的项目中,自动化测试的代码往往需要在不同的环境中进行切换&am…

Python中的os模块:walk函数与listdir函数的深度解析

Python中的os模块:walk函数与listdir函数的深度解析 os.walk()函数listdir()函数使用场景案例一:遍历目录树并处理文件案例二:列出目录中的文件名并执行某些操作 总结 在Python中,os模块提供了许多与操作系统交互的功能&#xff0…

AI建模 | 物体三维重建的高效方法

三维重建是将客观世界中的物体在虚拟空间表达出来,在大众视野中,物品三维重建最直观的应用当属虚拟仿真和VR/AR导航。其实在学科专业领域,三维重建已经更早地应用在高精地图、测绘系统、城市规划等领域。 科技发展的终极方向应当是普适性&am…

运用全新空调插座秒变智能新体验

最近台风肆虐,城市内涝等灾害频频发生;气候离不开环境,环境也离不开气候,在这两者之间,人类却成了第三者。 随手关灯,节约用电,是一种再普通不过的行为,然而10亿人在同一时间做同样…

Nginx 和 网关的关系是什么

分析&回答 Nginx也可以实现网关,可以实现对api接口的拦截,负载均衡、反向代理、请求过滤等。网关功能可以进行扩展,比如:安全控制,统一异常处理,XXS,SQL注入等;权限控制,黑白名…