JavaScript中出现浮点溢出如何解决

发布时间:2021-07-02 14:21:25 作者:Leah
来源:亿速云 阅读:339

这篇文章将为大家详细讲解有关JavaScript中出现浮点溢出如何解决,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

JavaScript浮点溢出的两种解决方案

请运行以下代码,发现了什么。这就是JavaScript溢出问题。

<scripttypescripttype="text/javascript"> vara=38.8;  varb=6.8;  alert(a-b);  vara=134.22;  varb=6;  alert(a*b);  </script>

对于JavaScript溢出问题常见的有两种解决方案:

***个调用一个处理函数

functionoverflow(a,h,b)  {if(a.toString().indexOf(".")  <0&&b.toString().indexOf(".")<0){returneval(a+h+b);  }varalen=a.toString().split(".");if(alen.length==1){   alen=0;}else{alenalen=alen[1].length;  }varblen=b.toString().split(".");if(blen.length==1){   blen=0;}else{   blenblen=blen[1].length;}if(blen>alen)alen=blen;blen="1";  for(;alen>0;alen--){blenblen=blen+"0";  }switch(h){case"+":return(a*blen+b*blen)/blen;  break;case"-":return(a*blen-b*blen)/blen;  break;case"*":return((a*blen)*(b*blen))/(blen*blen);  break;default:return0;}}

第二个使用toFixed方法返回一个以定点表示法表示的数字的字符串形式

再运行以下代码看看

<scripttypescripttype="text/javascript"> vara=38.8;  varb=6.8;  alert(overflow(a,"-",b));  vara=134.22;  varb=6;  alert((a*b).toFixed(2));  </script>

关于JavaScript中出现浮点溢出如何解决就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

推荐阅读:
  1. 如何解决JavaScript中IE兼容出现的问题
  2. angular中出现内存溢出如何解决

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

javascript

上一篇:如何修改SpringBoot项目启动banner

下一篇:Javascript中怎么利用textarea获取光标位置

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》