开发中有时我们需要对小数进行取整,或者只保留 N 位小数进行显示。下面分别对这两种情况进行说明。这里假设我们有如下数字进行处理:
var num = 5/3; console.log(num);
var num = parseInt(5/3); // 1
var num = Math.round(5/3); // 2
var num = Math.ceil(5/3); // 2
var num = Math.floor(5/3); // 1
var num1 = (5/3).toFixed(2); // 1.67 var num2 = (4).toFixed(2); // 4.00 var num3 = (0.015).toFixed(2); // 0.01 var num4 = (0.025).toFixed(2); // 0.03
//保留n位小数 function roundFun(value, n) { return Math.round(value*Math.pow(10,n))/Math.pow(10,n); }
var num1 = roundFun(5/3, 2); // 1.67 var num2 = roundFun(4, 2); // 4 var num3 = roundFun(0.015, 2); // 0.02 var num4 = roundFun(0.025, 2); // 0.03
//保留n位小数并格式化输出(不足的部分补0) var fomatFloat = function(value, n) { var f = Math.round(value*Math.pow(10,n))/Math.pow(10,n); var s = f.toString(); var rs = s.indexOf(‘.‘); if (rs < 0) { s += ‘.‘; } for(var i = s.length - s.indexOf(‘.‘); i <= n; i++){ s += "0"; } return s; }
var num1 = fomatFloat(5/3, 2); // 1.67 var num2 = fomatFloat(4, 2); // 4.00 var num3 = fomatFloat(0.015, 2); // 0.02 var num4 = fomatFloat(0.025, 2); // 0.03
转自:https://www.hangge.com/blog/cache/detail_1791.html
JS - 控制小数位数的方法(保留小数点后N位、以及小数取整)
原文:https://www.cnblogs.com/zhuzhaoli/p/13157052.html