JS中int类型数字超过最大值的问题及解决方案

 更新时间:2026年03月17日 15:41:13   作者:心之所向_gp  
文章主要讲述了一个在项目中遇到的数字类型ID在页面操作时查不到数据的问题,并通过将数字类型的ID转成字符串后再传入后台解决了问题,原因是JavaScript能表示并进行精确算术运算的整数范围有限,对于超过该范围的整数,JavaScript在进行运算时可能会失去精度

问题

在项目中遇到一个奇怪的问题,我们在后台获取到一个id是数字类型的,然后再进行页面操作时通过这个id去查其所绑定的数据时,一直查不到数据后台报错;

问题原因

后面经过自己的对id的比对之后发现我们获取到的id与传给后台的值竟然是不一样

解决办法

在获取到数字类型的id之后先将id转成字符串再传入后台,问题就解决了。

 data() {
    return {
      number: 59588178895489589,
    };
  },
  created() {
    console.log(this.number)
  },

原因分析:

我们可以看到上面我给的这个number赋值是:59588178895489589,而我们再浏览器打印出来的却是:59588178895489590;其实如果我们用了ESLINK是会有提示的。

因为根据ECMAScript标准的要求,JS能表示并进行精确算术运算的整数范围为:正负2的53次方,也即从最小的值-9007199254740992到最大的值9007199254740992之间的范围;虽然对于超过这个范围的整数,JavaScript依旧可以进行运算,但却不保证运算结果的精度。

值得注意的是:

对于整数的位运算(比如移位等操作),JavaScript仅支持32位整型数,也即从-2147483648到+2147483647之间的整数

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • JavaScript动态修改弹出窗口大小的方法

    JavaScript动态修改弹出窗口大小的方法

    这篇文章主要介绍了JavaScript动态修改弹出窗口大小的方法,涉及javascript中window.open方法的使用技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • JS typeof fn === ''function'' && fn()详解

    JS typeof fn === ''function'' && fn()详解

    最近在学习js的时候发现很多人都喜欢在JS 中存在fn && fn() 执行语句或者typeof fn === 'function' && fn(),下面这篇文章就为大家分享一下
    2020-08-08
  • JS闭包与延迟求值用法示例

    JS闭包与延迟求值用法示例

    这篇文章主要介绍了JS闭包与延迟求值,结合简单实例分析了JS针对运算量较大的情况下闭包与延迟求值的实现技巧,需要的朋友可以参考下
    2016-12-12
  • javascript Array数组对象的扩展函数代码

    javascript Array数组对象的扩展函数代码

    我们经常给 String,Function,Array 的原型加上自定义的扩展函数,比如去除字符串空格,数组排序等
    2010-05-05
  • JavaScript实现网页购物车

    JavaScript实现网页购物车

    这篇文章主要为大家详细介绍了JavaScript实现网页购物车,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • JS获得图片alt信息的方法

    JS获得图片alt信息的方法

    这篇文章主要介绍了JS获得图片alt信息的方法,涉及javascript获取图片元素及对应alt属性的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • Javascript原型链的原理详解

    Javascript原型链的原理详解

    这篇文章主要介绍了Javascript原型链的原理,结合实例形式深入分析了JavaScript原型链的原理与使用技巧,需要的朋友可以参考下
    2016-01-01
  • 详解javascript对数组和json数组的操作

    详解javascript对数组和json数组的操作

    这篇文章主要介绍了javascript对数组和json数组的操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • javascript检测移动设备横竖屏

    javascript检测移动设备横竖屏

    移动端的开发过程中,免不了要判断横竖屏,然后在执行其他操作,比如分别加载不同样式,横屏显示某些内容,竖屏显示其他内容等等。
    2016-05-05
  • JS实现音乐导航特效

    JS实现音乐导航特效

    这篇文章主要为大家详细介绍了JS实现音乐导航特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01

最新评论