js取float型小數點後兩位元的方法

來源:互聯網
上載者:User

 js中取小數點後兩位方法最常用的就是四捨五入函數了,前面我介紹過js中四捨五入一此常用函數,這裡正好用上,下面我們一起來看取float型小數點後兩位一些方法總結

用Javascript取float型小數點後兩位,例22.127456取成22.13,如何做? 1.丟棄小數部分,保留整數部分 parseInt(5/2) 2.向上取整,有小數就整數部分加1 Math.ceil(5/2) 3,四捨五入. Math.round(5/2) 4,向下取整 Math.floor(5/2) 另類的方法 1. 最笨的辦法   代碼如下:function get(){    var s = 22.127456 + "";    var str = s.substring(0,s.indexOf(".") + 3);    alert(str);}   2. Regex效果不錯  代碼如下:<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>  3. 他就比較聰明了.....   代碼如下:<script>var num=22.127456;alert( Math.round(num*100)/100);</script>  4.會用新鮮東西的朋友....... 但是需要 IE5.5+才支援。 5.js保留2位小數(強制) 對於小數點位元大於2位的,用上面的函數沒問題,但是如果小於2位的,比如:changeTwoDecimal(3.1),將返回3.1,如果你一定需要3.10這樣的格式,那麼需要下面的這個函數:   代碼如下:function changeTwoDecimal_f(x) {    var f_x = parseFloat(x);    if (isNaN(f_x)) {        alert('function:changeTwoDecimal->parameter error');        return false;    }    var f_x = Math.round(x * 100) / 100;    var s_x = f_x.toString();    var pos_decimal = s_x.indexOf('.');    if (pos_decimal < 0) {        pos_decimal = s_x.length;        s_x += '.';    }    while (s_x.length <= pos_decimal + 2) {        s_x += '0';    }    return s_x;}   功能:將浮點數四捨五入,取小數點後2位,如果不足2位則補0,這個函數返回的是字串的格式用法:changeTwoDecimal(3.1415926)返回3.14 changeTwoDecimal(3.1)返回3.10
相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。