javascript tofixed四舍五入的方法
Number.prototype.toFixed = function(d) {
var s = this + "";
if (!d) d = 0;
if (s.indexOf(".") == -1) s += ".";
s += new Array(d + 1).join("0");
if (new RegExp("^(-|//+)?(//d+(//.//d{0," + (d + 1) + "})?)//d*$").test(s)) {
var s = "0" + RegExp.$2,
pm = RegExp.$1,
a = RegExp.$3.length,
b = true;
if (a == d + 2) {
a = s.match(//d/g);
if (parseInt(a[a.length - 1]) > 4) {
for (var i = a.length - 2; i >= 0; i--) {
a[i] = parseInt(a[i]) + 1;
if (a[i] == 10) {
a[i] = 0;
b = i != 1;
} else break;
}
}
s = a.join("").replace(new RegExp("(//d+)(//d{" + d + "})//d$"), "$1.$2");
}
if (b) s = s.substr(1);
return (pm + s).replace(//.$/, "");
}
return this + "";
};
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/18817.html