JS中的toFixed 四捨五入方法

2021-08-08 03:27:51 字數 610 閱讀 8287

方法一:在js中四捨五入的函式 tofixed(n) , n為要保留的小數字數。 n為0~20,當n超過20的時候,js會出錯。如果小數點前和要擷取的前一位都是0時,不會按常理擷取。 var h=0.07 h.tofixed(1)的值為0.0其實要解決這個問題,原來是不一定要重寫js中的number型別的tofixed方法的。乙個非常牛的同事,想到了乙個他說很笨,但是我覺得很牛的方法。js的api上說, 擷取的位數前至少要有一位不是0的。於是,他這個很笨卻很牛的方法是:使用tofixed方法之前加1,使用之後再減去1。

varnum = 0.007;

//要四捨五入的數字

varfixnum = 

newnumber(num+1).tofixed(2);

//四捨五入之前加1

varfixednum = 

newnumber(fixnum - 1).tofixed(2);

//四捨五入之後減1,再四捨五入一下

alert(fixednum);//彈出的數字就是正確的四捨五入結果啦

方法二:下面的指令碼是重寫了tofixed(),這樣0.056就可以轉化到0.1了

number.prototype.tofixed=function(len)

JS的toFixed的四捨五入精準問題

1.谷歌瀏覽器 55.0.2883.87 m 2.火狐瀏覽器 44.0.2 3.ie瀏覽器 11.545.10586.0 var num 3.445 console.log num.tofixed 2 1.谷歌 3.44 2.火狐 3.44 3.ie 3.45 不同瀏覽器的js引擎對 四捨五入的邊界...

JS的toFixed方法四捨五入修正,保證沒問題

當我們想修正此方法時,變成四捨五入時,網上搜到的方法都是這種,但是下面的這個方法是有問題的 number.prototype.tofixed function b else if this 0 else 如果不信,可以試下用上面的來改寫,然後試試這個 266.215.tofixed 2 結果肯定不是...

JS中四捨五入

在js中四捨五入的函式 tofixed n n為要保留的小數字數。n為0 20,當n超過20的時候,js會出錯。var d 10.005 var f d.tofixed 2 alert f 或者用 new number d tofixed 2 bug 如果小數點前和要擷取的前一位都是0時,不會按常理...