自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

解決JavaScript浮點(diǎn)溢出的兩種途徑

開發(fā) 前端
在JS中你可能會(huì)遇到浮點(diǎn)溢出問題,那如何解決這一問題呢,這里通過實(shí)例向大家描述一下兩種解決方案,希望對(duì)你的學(xué)習(xí)有所幫助。

本文向大家簡(jiǎn)單介紹一下JavaScript浮點(diǎn)溢出的兩種解決方案,首先我們先運(yùn)行一下一段代碼,看有什么現(xiàn)象產(chǎn)生,再說一下如何解決此問題。

JavaScript浮點(diǎn)溢出的兩種解決方案

請(qǐng)運(yùn)行以下代碼,發(fā)現(xiàn)了什么。這就是JavaScript溢出問題。

  1. <scripttypescripttype="text/javascript"> 
  2. vara=38.8;  
  3. varb=6.8;  
  4. alert(a-b);  
  5. vara=134.22;  
  6. varb=6;  
  7. alert(a*b);  
  8. </script> 
  9.  

 對(duì)于JavaScript溢出問題常見的有兩種解決方案:

***個(gè)調(diào)用一個(gè)處理函數(shù)

  1. functionoverflow(a,h,b)  
  2. {if(a.toString().indexOf(".")  
  3. <0&&b.toString().indexOf(".")<0){returneval(a+h+b);  
  4. }varalen=a.toString().split(".");if(alen.length==1){   
  5. alen=0;}else{alenalen=alen[1].length;  
  6. }varblen=b.toString().split(".");if(blen.length==1){   
  7. blen=0;}else{   
  8. blenblen=blen[1].length;}if(blen>alen)alen=blen;blen="1";  
  9. for(;alen>0;alen--){blenblen=blen+"0";  
  10. }switch(h){case"+":return(a*blen+b*blen)/blen;  
  11. break;case"-":return(a*blen-b*blen)/blen;  
  12. break;case"*":return((a*blen)*(b*blen))/(blen*blen);  
  13. break;default:return0;}}  
  14.  

 第二個(gè)使用toFixed方法返回一個(gè)以定點(diǎn)表示法表示的數(shù)字的字符串形式

再運(yùn)行以下代碼看看

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

【編輯推薦】

  1. Javascript解決瀏覽器兼容問題12個(gè)技巧
  2. 技術(shù)分享 Javascript如何獲取textarea中光標(biāo)位置
  3. JavaScript彈出層和背景變暗代碼實(shí)現(xiàn)
  4. 技術(shù)分享 如何識(shí)別控制DHTML和JavaScript中的頁(yè)面元素
  5. 深入學(xué)習(xí)JavaScript中Function對(duì)象語法 

 

責(zé)任編輯:佚名 來源: robinhong.cn
相關(guān)推薦

2010-09-30 14:35:36

JS浮點(diǎn)溢出

2010-09-15 17:19:23

APC

2010-06-07 17:41:42

Sendmail 配置

2011-06-23 09:07:16

2010-11-19 11:57:15

Oracle密碼丟失

2010-09-07 09:18:16

DIV彈出窗口

2010-03-15 14:01:26

JavaScript

2010-09-28 15:12:27

Javascript

2009-07-27 13:38:10

服務(wù)器變慢 Ping

2010-07-17 00:24:40

2009-09-14 19:25:09

Ruby form

2009-03-04 10:38:36

Troubleshoo桌面虛擬化Xendesktop

2010-03-26 18:41:51

Nginx 502錯(cuò)誤

2010-10-11 10:31:51

MySQL分區(qū)

2013-05-27 14:31:34

Hadoop 2.0

2021-05-27 10:57:01

TCP定時(shí)器網(wǎng)絡(luò)協(xié)議

2010-08-30 10:03:13

2010-03-11 14:34:47

Python環(huán)境

2011-03-03 10:26:04

Pureftpd

2010-08-06 09:38:11

Flex讀取XML
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)