当前位置:首页 > 锟斤拷锟斤拷锟斤拷锟斤拷 > JS小数位截取
JS小数位截取
发布时间:2015/8/22 12:17:22 点击次数:6393次
用Javascript取float型小数点后两位,例22.127456取成22.13,如何做?
1. [javascript]
function get()
{
var s = 22.127456 + "";
var str = s.substring(0,s.indexOf(".") + 3);
alert(str);
}
2. 正则表达式效果不错
[javascript]
<script type="text/javascript">
onload = function(){
var a = "23.456322";
var aNew;
var re = /([0-9]+\.[0-9]{2})[0-9]*/;
aNew = a.replace(re,"$1");
alert(aNew);
}
</script>
[javascript]
<script>
var num=22.127456;
alert( Math.round(num*100)/100);
</script>
[javascript]
<script>
var num=22.127456;
alert( num.toFixed(2));
</script>
<script> var num=22.127456; alert( num.toFixed(2));</script>
3.round 方法
作用:返回与给出的数值表达式最接近的整数。
语法:Math.round(number) ,必选项 number 参数是要舍入到最接近整数的值。
说明:如果 number 的小数部分大于等于 0.5,返回值是大于 number 的最小整数。否则,round 返回小于等于 number 的最大整数。
语法:Math.round(number) ,必选项 number 参数是要舍入到最接近整数的值。
说明:如果 number 的小数部分大于等于 0.5,返回值是大于 number 的最小整数。否则,round 返回小于等于 number 的最大整数。
示例: 如果取一位则乘以 10 之后再除以 10, 以此类推Math.round(3.248 * 100) / 100
4.Javascript 1.5 新增函数
在 Javascript 1.5 (IE5.5+,NS6+ 以上版本支持)中,新增了2个专门用于货币流通的函数:
Number.toFixed(x) 和 Number.toPrecision(x)。
Number.toFixed(x) 和 Number.toPrecision(x)。
Number.toFixed(x) 是将指定数字截取小数点x位, Number.toPrecision(x) 是将整个数字截取指定(x)长度。注意,一个是计算小数点后的长度,一个是计算整个数字的长度 。
5.请看完整示例:
[javascript]
<script type="text/javascript">
var aa = 2.3362;
document.write(aa.toFixed(1)); // 2.3
document.write(aa.toFixed(2)); // 2.34
document.write(aa.toPrecision(2)); // 2.3
document.write(aa.toPrecision(3)); // 2.34
document.write(Math.round(aa * 10) / 10); // 2.3
document.write(Math.round(aa * 100) / 100); // 2.34
</script>
<script type="text/javascript"> var aa = 2.3362; document.write(aa.toFixed(1)); // 2.3document.write(aa.toFixed(2)); // 2.34 document.write(aa.toPrecision(2)); // 2.3document.write(aa.toPrecision(3)); // 2.34 document.write(Math.round(aa * 10) / 10); // 2.3document.write(Math.round(aa * 100) / 100); // 2.34 </script>
显然,新增的 2 个专用函数使用非常方便,但是因为是新增函数,所以要考虑浏览器支持问题,请根据您的客户群选择对应的方法。