解决js中大数的问题

大数的理解: 就是由于数字太大了,然后js解析不了,不认识. 就比如实际生活中,在双11的时候,我们知道淘宝一夜之间总购买量肯定是一个很大很大的金额,当我们前端碰到一个非常大的数字的时候,js可能会解析不了.

JS中的安全数字:

Number.MAX_SAFE_INTEGER    可以查看js中的最大数字
> 9007199254740991

 > Number.isSafeInteger(1323819148127502300)   可以判断是否是一个安全的数字
 > false

 > id的值已经超出了js中最大的Number数值,会导致js无法正确的进行数字的处理和运算,例如:

>1323819148127502300 + 1 === 1323819148127502300 + 2
>true

解决方案:

json-bigint()   json-bigint - npm

包的处理:  其实就是把"大数"转换为一个js字符串对象,这样js就可以识别了,当用到的时候就可以使用这个对象.tostring转换成字符串

1.安装依赖包:

npm install json-bigint -S

2.在 @/utils/request.js 模块中导入 json-bigint 模块:

// 导入大数处理的包
import bigInt from 'json-bigint'

3.声明处理大数问题的方法:

try和catch的使用,把可能有错误的代码放到try里面,而catch是备胎,为了让自己的程序更加的安全,不容易崩溃导致后面的代码无法正常跑了,咱们可以把那些可能会崩溃的代码用try包起来,用catch进行处理

utils/request.js

// data 是服务器响应回来的,待处理的数据
const transBigInt = data => {try {// 尝试进行大数处理// 优选方案return bigInt.parse(data)} catch {// 大数处理失败,单纯的进行 JSON -> 对象的转换// 兜底的方案return JSON.parse(data)}
}

4.在调用 axios.create() 方法期间,指定 transformResponse 选项:

// 创建axios的实例对象
const instance = axios.create({// 配置请求的根路径baseURL: 'http://www.baidu.com',// 对服务器响应回来的数据,进行预处理transformResponse: [transBigInt]
})

5.大数(art_id)变成了一个js字符串对象, 调用 .toString() 方法,把大数对象转为字符串表示的数字

参考连接:

关于前端js中遇到大数字时的解决 - 简书


https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/BigInt

http://es6.ruanyifeng.com/#docs/number#BigInt-%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/57662.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSP 201903-1 小中大

题目链接: 计算机软件能力认证考试系统http://118.190.20.162/view.page?gpidT89 【分析】主要学一下java的四舍五入,String,format("%.f", double); import java.util.Arrays; import java.util.Scanner;public cla…

CSP:小中大

试题编号:201903-1 试题名称:小中大 时间限制:1.0s 内存限制:512.0MB 思路:题目很简单,依次输出最大值,中位数,最小值。输出中位数的时候很神奇的出错。。。费了好半天事才改对。…

ccf小中大

试题编号:201903-1试题名称:小中大时间限制:1.0s内存限制:512.0MB问题描述: 思路很简单,但是有很多细节要考虑 如果中位数是小数,则要四舍五入,保留一位小数 否则直接输出整…

Spring中大事务拆分方案

Spring中大事务拆分方案 模块设计的时序图 启动流程 激活事件 完成事件 长事务造成的影响 由于现在事件的完成及后续激活都在一个事务中,比如完成融资申请事件之后会去激活批次启动签约,前置协议,资质认证等事件,这些操作…

AI 将完全取代前端开发吗?

注:今晨,我浏览 Medium,看到了篇颇为标题党的文章,于是我就将它抛给了 ChatGPT。本篇文章全部由 ChatGPT 所写。同时,我也请 ChatGPT 分享了它对此的观点。 最近,我的同事向我讲述了他与他老板的一次谈话。…

全网多种方法解决未连接到互联网 代理服务器出现问题,或者地址有误的错误

文章目录 1. 复现错误2. 分析错误3. 解决错误4. 解决该错误的其他方法5. 补充说明 1. 复现错误 今天,单位的实习生准备下载公司的代码,由于公司的代码放在gitlab上,需要内网才能登录gitlab。 而登陆内网需借助Hillstone Secure Connect&…

【实战篇】37 # 如何使用 QCharts 图表库绘制常用数据图表?

说明 【跟月影学可视化】学习笔记。 QCharts 图表库 QCharts 是一个基于 spritejs 封装的图表库,可以让用户以组件的形式组合出各种图表:https://www.qcharts.cn/#/home QCharts 图表的基本用法 最简单的方式是,直接通过 CDN,…

2021年微软研究博士奖研金名单出炉!三位华人博士生入选,每人42000美元

点击上方“CVer”,选择加"星标"置顶 重磅干货,第一时间送达 本文转载自:AI科技评论 作者 | 陈大鑫 就在今日,微软研究院宣布了2021年微软研究博士奖研金获奖名单! 今年一共有十位在读博士生荣获此殊荣&…

新加坡管理大学何盛烽团队招收计算机视觉、图像生成方向全奖博士生

点击下方卡片,关注“CVer”公众号 AI/CV重磅干货,第一时间送达 点击进入—> CV 微信技术交流群 博士申请 | 新加坡管理大学(SMU)何盛烽副教授招收计算机视觉、图像生成方向全奖博士生 新加坡管理大学 新加坡管理大学&#xff0…

【硕博士推荐】国内有哪些不错的CV(计算机视觉)团队?

来源:深度学习技术前沿 编辑: Evans 转载请注明来源! 【导读】计算机视觉是当前人工智能领域的超级热门,本文为大家总结了当前国内比较优秀的计算机视觉团队信息,希望能在大家申请硕士或者博士的过程中,提供一些参考信…

加州大学UC Santa Cruz CSE系助理教授招收多名AI方向全奖博士生及暑期实习生

点击下方卡片,关注“CVer”公众号 AI/CV重磅干货,第一时间送达 作者:Yuyin Zhou | 源:知乎 https://zhuanlan.zhihu.com/p/437891533 加州大学UC Santa Cruz计算机科学与工程系 (UC Santa Cruz CSE) 周郁音博士招收人工智能方向…

剑桥CS博士推荐,毕业前要掌握的 9 个工具

无论你在创业还是在做学术研究,这些工具都将使你的技能更上一层楼。 学术界在推进技术方面发挥了巨大作用,但学术界和工业界往往存在一种分割状态。我们经常会看到这种现象:无数很棒的辅助工具在学术界被忽视,但在工业界很受欢迎…

科研工作专用ChatGPT

最近,一位开发者在 GitHub 上开源了一个「科研工作专用 ChatGPT」项目,让众多科研工作者大受好评。这个项目能够一键完成论文润色、语法检查、中英互译、代码解释等任务,非常方便实用。 自从 ChatGPT 诞生以来,越来越多的科研工作…

微软数据科学家助理(Data Scientist Associate)认证考试通过经验分享(DP-100)

今天冒着大疫情,去海淀的test center参加考试,通过了微软DP-100 在 Azure 上设计和实现数据科学解决方案,并且获得了经 Microsoft 认证:Azure 数据科学家助理 的证书。 经 Microsoft 认证:Azure 数据科学家助理 考试结…

新加坡管理大学何盛烽团队招收计算机视觉方向公派/访问博士生

点击下方卡片,关注“CVer”公众号 AI/CV重磅干货,第一时间送达 点击进入—>CV微信技术交流群 新加坡管理大学 新加坡管理大学(Singapore Management University),简称新大 (SMU),…

美国CS PhD Research Scientist找工作经验总结

点击下方卡片,关注“CVer”公众号 AI/CV重磅干货,第一时间送达 作者:刘壮 | 已授权转载(源:知乎)编辑:CVer https://zhuanlan.zhihu.com/p/537028803 过去小半年的时间主要就在找工作和决定去…

美国佐治亚大学卢国玉老师组招收计算机视觉方向全奖博士生

佐治亚大学 University of Georgia在2022 USNews美国大学排名排48名,全美最佳公立大学排第15,是公立常青藤大学之一。学校坐落在距离亚特兰大一小时车程的Athens,气候宜人,非常安全。亚特兰大机场是美国最大的机场,交通…

新加坡国立大学Robby T. Tan教授招收计算机视觉方向博士生

来源:AI求职 新加坡国立大学 新加坡国立大学(National University of Singapore),简称国大(NUS),是亚洲顶尖、国际知名的研究型大学(2022 年,泰晤士高等教育世界大学排名为世界第 21…

计算机名校远程在职硕士信息汇总Online Master

许多在职的程序员一方面希望拿一个名校学历,一方面觉得辞去工作去读书成本太高,此时他们会选择去读一个在线硕士online master。本文梳理了英美名校提供的在线硕士项目,比如加州大学伯克利,帝国理工,佐治亚理工&#x…

CVPR 2023最佳论文候选出炉!武大、港中文、商汤等国内机构多篇入选

©作者 | 编辑部 来源 | 新智元 刚刚,CVPR 2023放榜12篇获奖论文候选,武大、港中文、港科大、上海人工智能实验室、商汤、华为等国内机构赫然在列。 今天,官方公布了12篇获奖论文候选。(占接受论文的0.51%,占提交论…