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

浏览器精度问题

问题产生

浏览器端一般情况下无法正确解析后端返回的long类型的主键,比如作为索引的id,为了避免重复可能设置成一个很大的唯一UUID,但是超过一定范围后,浏览器可能无法正常解析。这主要和 Javascript 的精度问题有关,long类型的数据会被截断,超过 17 位就会补 0,导致前端无法正确解析。

解决方案

  1. 使用BigInt类型,BigInt类型是 Javascript 新增的数据类型,它可以表示任意大小的整数,而不受 Javascript 的精度限制。
const id = BigInt(1234567890123456789);
const key = 1234567890123345678990n;
  1. 使用String类型,String类型是 javascript 的一种数据类型,它可以表示任意大小的字符串,而不受 javascript 的精度限制。

但是如果要用到的值是请求后端接口返回的值,就会出现值被自动截断补 0 的情况,这个时候就需要借助第三方插件了。

推荐使用json-bigint,在创建 axios 实例的时候,统一进行转换处理。
示例代码如下:

const options = {transformResponse: [(data: any) => {try {return JSONBig().parse(data);} catch (error) {return data;}},],
};const instance = axios.create(option);

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Vue3常见知识**MS【4】
  • 【案例56】安全设备导致请求被拦截
  • 【PGCCC】PostgreSQL线程池技术揭秘:从原理到实战应用
  • Broadcast Hash Join
  • 【RabbitMQ】快速上手
  • linux内核驱动:pca953xIO扩展芯片驱动总结
  • Swift concurrency 3 — 三种异步方式(@escaping closure, Combine, async/await)
  • CAPL——定时器用法
  • Vue3:命名路由
  • 9-3 深度循环神经网络
  • 【微信小程序】全局数据共享 - MobX
  • 如何用Python调用智谱清言api进行智能问答
  • 【Java 设计模式】Business Delegate 模式:简化业务服务交互
  • 磷酸二氢钾溶液净化除杂,除重金属
  • 前端面试手撕题收集(自用)
  • 0基础学习移动端适配
  • 2017届校招提前批面试回顾
  • axios 和 cookie 的那些事
  • css选择器
  • Docker下部署自己的LNMP工作环境
  • Linux Process Manage
  • Linux各目录及每个目录的详细介绍
  • Lucene解析 - 基本概念
  • niucms就是以城市为分割单位,在上面 小区/乡村/同城论坛+58+团购
  • PHP 小技巧
  • python docx文档转html页面
  • spring-boot List转Page
  • spring学习第二天
  • Terraform入门 - 3. 变更基础设施
  • 记录:CentOS7.2配置LNMP环境记录
  • 巧用 TypeScript (一)
  • 使用权重正则化较少模型过拟合
  • 问题之ssh中Host key verification failed的解决
  • 新手搭建网站的主要流程
  • 译自由幺半群
  • ​iOS实时查看App运行日志
  • ​Java并发新构件之Exchanger
  • ​人工智能书单(数学基础篇)
  • ​如何使用QGIS制作三维建筑
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • #QT(一种朴素的计算器实现方法)
  • #控制台大学课堂点名问题_课堂随机点名
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (Matlab)使用竞争神经网络实现数据聚类
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (附源码)ssm教材管理系统 毕业设计 011229
  • (简单) HDU 2612 Find a way,BFS。
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (力扣题库)跳跃游戏II(c++)
  • (论文阅读11/100)Fast R-CNN
  • (四十一)大数据实战——spark的yarn模式生产环境部署
  • (一)VirtualBox安装增强功能
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (中等) HDU 4370 0 or 1,建模+Dijkstra。