方法一:
在js中四捨五入的函式 tofixed(n) , n為要保留的小數字數。
n為0~20,當n超過20的時候,js會出錯。
var d=10.005;
var f=d.tofixed(2);
alert(f);
bug:
如果小數點前和要擷取的前一位都是0時,不會按常理擷取。
var h=0.07
h.tofixed(1)的值為0.0
如果要修改這個缺陷,可以把js中的number型別的tofixed方法重寫。
例如:複製****示例:
number.prototype.tofixed = function(d)
)?)\\d*$").test(s))
else break;}
}s=a.join("").replace(new regexp("(\\d+)(\\d)\\d$"),"$1.$2");
}if(b)s=s.substr(1);return (pm+s).replace(/\.$/, "");} return this+"";
};
這樣就可以修復number型別的tofixed方法。
方法二:
之前一直在用這個js自帶的tofixed函式來進行四捨五入的操作,可是,在實際使用過程中卻遇到了問題。
比如複製****示例:
var money=0.00542;
alert(number(money).tofixed(2));
以上結果是錯誤的,下面的方法通過巧妙的使用math.round函式,完全可以解決數值很小時的精度問題。
複製****示例:
var money=0.00542;
alert(number(money).tofixed(2));
function round2(number,fractiondigits)
}
alert(round2(money,2));
round 方法
返回與給出的數值表示式最接近的整數。
math.round(number)
必選項 number 引數是要捨入到最接近整數的值。
說明如果 number 的小數部分大於等於 0.5,返回值是大於 number 的最小整數。
否則,round 返回小於等於 number 的最大整數。
js 四捨五入
round 四捨五入為整數 本節內容 js實現四捨五入的 方法一 在js中四捨五入的函式 tofixed n n為要保留的小數字數。n為0 20,當n超過20的時候,js會出錯。var d 10.005 var f d.tofixed 2 alert f bug 如果小數點前和要擷取的前一位都是0時...
js四捨五入
寫法巨強的四捨五入的轉換函式,如下 function round v,e 在感嘆js強大的同時,也感嘆一下自己的無知!引數裡的 v表示要轉換的值 e表示要保留的位數 函式裡的兩個for,這個是重點了,第乙個for針對小數點右邊的情況,也就是保留小數點右邊多少位 第二個for針對小數點左邊的情況,也就...
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時,不會按常理...