javascript - 在 Javascript 中递增 MAX_SAFE_INTEGER
问题描述
如何解释我得到的结果在前两次计算中以 92 结尾,在第三次计算中以 94 结尾?
console.log(Number.MAX_SAFE_INTEGER + 1); //...92
console.log(Number.MAX_SAFE_INTEGER + 2); //...92
console.log(Number.MAX_SAFE_INTEGER + 3); //...94
解决方案
基于此 Number.MAX_SAFE_INTEGER
,这是您安全计算中的最大整数,任何大于此的数字都是不安全的。
编辑
对于大于Number.MAX_SAFE_INTEGER
使用BigInt
,例如:
BigInt(Number.MAX_SAFE_INTEGER) + BigInt(2)
alert(BigInt(Number.MAX_SAFE_INTEGER) + BigInt(1)); //9007199254740992n
alert(BigInt(Number.MAX_SAFE_INTEGER) + BigInt(2)); //9007199254740993n
alert(BigInt(Number.MAX_SAFE_INTEGER) + BigInt(3)); //9007199254740994n
推荐阅读
- javascript - 如何从打字稿文件调用javascript函数
- java - Swagger 客户端问题:服务是否产生不一致的 JSON/XML 或者我做错了什么?
- python - 如何使用jupyter设置python路径
- elasticsearch - Elasticsearch 无痛脚本不使用 if 条件替换嵌套对象字段值
- javascript - 在变量中从 REST API 传递 GET 答案 - React.js
- libreoffice-calc - How can I add quotation marks to a libreoffice calc cell text?
- python - Crawling data faster in python
- python-3.x - 将烧瓶中base64中的图像转换为添加到PDF中
- android - 如何在 listView Kotlin 中获取图像
- windows - 我可以启用组策略以管理员身份启动应用程序吗?