首頁 > web前端 > js教程 > JavaScript如何實作對數字保留兩位小數一位自動補零_javascript技巧

JavaScript如何實作對數字保留兩位小數一位自動補零_javascript技巧

WBOY
發布: 2016-05-16 15:24:51
原創
2008 人瀏覽過

本章節介紹如何實現對數字保留兩位小數效果,如果數字的原本小數位數不到兩位,那麼缺少的就自動補零,這個也是為了統一的效果,先看代碼實例:

function returnFloat(value){
 var value=Math.round(parseFloat(value)*100)/100;
 var xsd=value.toString().split(".");
 if(xsd.length==1){
 value=value.toString()+".00";
 return value;
 }
 if(xsd.length>1){
 if(xsd[1].length<2){
 value=value.toString()+"0";
 }
 return value;
 }
}
var num=3.1;
console.log(returnFloat(num)); 
登入後複製

上面的程式碼實現了我們的要求,下面介紹一下它的實作過程。

一.程式碼註解:

1.function returnFloat(value){},參數是要被轉換的數字。

2.var value=Math.round(parseFloat(value)*100)/100,這個應該是函數的核心之處,parseFloat(value)將參數轉換為浮點數,因為參數有可能是字串,乘以100是因為要保留兩位小數,先將小數點向右移動兩個位數,然後再利用Math.round()方法實行四捨五入計算,最後除以100,這樣就實現了保留保留兩位小數,而且還具有四捨五入效果,但是這個並不完美,如果參數數字本身的小數位數大於等於2是可以的,如3.1415,但是如3或者3.0這樣的還是沒有完美的實現,繼續看下面。

3.var xsd=value.toString().split("."),使用點"."value分隔成一個陣列。

4.if(xsd.length==1){value=value.toString()+".00";return value;},如果數組的長度是1,也就是說不存在小數,那麼就會為這個數字加兩個0,例如3會被轉換成3.00。

5.

if(xsd.length>1){
 if(xsd[1].length<2){
 value=value.toString()+"0";
 }
 return value;
 }
登入後複製

if(xsd.length>1)用來判斷數字的長度是否大於1,也就是數字是否具有小數,如有小數,但是小數的位數小於2,也就是類似3.1這樣的,就會在後面加一個0,也就是會轉換為3.10。

二.相關學習教學:

1.Math.round()可以參考javascript的Math.round()方法一章節。

2.parseFloat()函數可以參考javascript的parseFloat()方法一章節。

3.toString()函數可以參考javascript的Number物件的toString()方法一章節。 

4.split()函式可以參考javascript的String物件的split()方法一章節。

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板