您的位置:首页 > Web前端 > JavaScript

js取小数点后两位 小数点操作方法总结

2013-10-21 18:02 519 查看
用Javascript取float型小数点后两位,例22.127456取成22.13,如何做?

1. 最笨的办法
1

function get()
2

{
3

    var s = 22.127456 + "";
4

    var str = s.substring(0,s.indexOf(".") + 3);
5

    alert(str);
6



2. 正则表达式效果不错
1

<script type="text/javascript">
2

onload = function(){
3

    var a = "23.456322";
4

    var aNew;
5

    var re = /([0-9]+\.[0-9]{2})[0-9]*/;
6

    aNew = a.replace(re,"$1");
7

    alert(aNew);
8

}
9

</script>

3. 他就比较聪明了
1

<script>
2

var num=22.127456;
3

alert( Math.round(num*100)/100);
4

</script> 

4.会用新鲜东西的朋友....... 但是需要 IE5.5+才支持。

 
1

 <script>
2

var num=22.127456;
3

alert( num.toFixed(2));

4

</script>

 5. 数字舍入toFixed()

其中是利用一个函数toFixed 来取小数点几位的!

<script language="javascript"> 
var a = "0.11"; 
var b = "0.2801"; 
var c = "1.002"; 
var sum1 = parseFloat(a)+parseFloat(b)+parseFloat(c); 
var sum2 = (parseFloat(a)+parseFloat(b)+parseFloat(c)).toFixed(4) 
document.write("a+b+c="+sum1); 
document.write("<br/>") 
document.write("a+b+c="+sum2) 
</script> 

a,b,c相加本来为1.3921,但sum1得出的结果为:1.3921000000000001,显然不正确,通过toFixed(n)方法修正后(n是精确的小数点位数),得到正确结果。 

例如:parseFloat(1.392143).toFixed(3)=1.392;

来自:http://hi.baidu.com/yansueh/item/f026d8d759ca10c31a72b4e9
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  js