发布:2024/3/24 10:26:38作者:管理员 来源:本站 浏览次数:625
在 JavaScript 中,有多种方法可以保留小数点后两位。以下是其中的一些方法:
1. toFixed() 方法:该方法将数字转换为字符串,并保留指定的小数位数。
let num = 3.1415926;
let result = num.toFixed(2);
// "3.14"
2. Math.round() 方法:该方法将数字四舍五入到指定的小数位数。
let num = 3.1415926;
let result = Math.round(num * 100) / 100;
// 3.14
3. parseFloat() 和正则表达式:该方法将字符串转换为数字,并保留指定的小数位数。
let num = "3.1415926";
let result = parseFloat(num).toFixed(2);
// "3.14"
4. Number() 和正则表达式:该方法将字符串转换为数字,并保留指定的小数位数。
let num = "3.1415926";
let result = Number(num.match(/^\d+(?:\.\d{0,2})?/));
// 3.14
以上是其中的一些方法,你可以根据自己的需求选择适合的方法。
扩展
js保留两位小数方法总结
JS数据格式化是在进行web前端开发时常碰到的事情,特别是在数据类型为Float的数据就需要特殊处理,如保留两位小数、小数点后的数据是否需要四舍五入等等。下面就来介绍实现数据格式化保留两位小数的多种方法。
1、JS自带的方法toFixed(),toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。
语法:NumberObject.toFixed(num),mun是必需的参数,即规定小数的位数,是 0 ~ 20 之间的值,包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将用 0 代替,所以toFixed() 方法可以实现保留2位、3位、4位等等,取决于num的数值。
返回值:返回 NumberObject 的字符串表示,不采用指数计数法,小数点后有固定的 num 位数字。如果必要,该数字会被舍入,也可以用 0 补足,以便它达到指定的长度。如果 num 大于 le+21,则该方法只调用 NumberObject.toString(),返回采用指数计数法表示的字符串。
当 num 太小或太大时抛出异常 RangeError。0 ~ 20 之间的值不会引发该异常。有些实现支持更大范围或更小范围内的值。
当调用该方法的对象不是 Number 时抛出 TypeError 异常。
<script type=”text/javascript”>
var num = new Number(13.376954);
document.write (num.toFixed(2))
</script>
输出:13.38
2、自定义函数实现小数保留并四舍五入。
function roundFun(numberRound,roundDigit) { //四舍五入,保留位数为roundDigit
if (numberRound>=0){
var tempNumber = parseInt((numberRound * Math.pow(10,roundDigit)+0.5))/Math.pow(10,roundDigit);
return tempNumber;
} else{
numberRound1=-numberRound;
var tempNumber = parseInt((numberRound1 * Math.pow(10,roundDigit)+0.5))/Math.pow(10,roundDigit);
return -tempNumber;
}
}
然后调用roundFun()这个函数就可以了。如roundFun('13.376954′,2);当然返回的结果跟第一种方法是一样的。
3、通过函数截取,截取到小数点后面第几位,当然这种方法就没有四舍五入了。
<script type=”text/javascript”>
tmp = 13.376954″
result = tmp.substr(0,tmp.indexOf(“.”)+2);
alert(result);
</script>
© Copyright 2014 - 2024 柏港建站平台 ejk5.com. 渝ICP备16000791号-4