JavaScript如何實(shí)現(xiàn)對(duì)數(shù)字保留兩位小數(shù)一位自動(dòng)補(bǔ)零
本章節(jié)介紹一下如何實(shí)現(xiàn)對(duì)數(shù)字保留兩位小數(shù)效果,如果數(shù)字的原本小數(shù)位數(shù)不到兩位,那么缺少的就自動(dòng)補(bǔ)零,這個(gè)也是為了統(tǒng)一的效果,先看代碼實(shí)例:
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));
上面的代碼實(shí)現(xiàn)了我們的要求,下面介紹一下它的實(shí)現(xiàn)過(guò)程。
一.代碼注釋:
1.function returnFloat(value){},參數(shù)是要被轉(zhuǎn)換的數(shù)字。
2.var value=Math.round(parseFloat(value)*100)/100,這個(gè)應(yīng)該是函數(shù)的核心之處,parseFloat(value)將參數(shù)轉(zhuǎn)換為浮點(diǎn)數(shù),因?yàn)閰?shù)有可能是字符串,乘以100是因?yàn)橐A魞晌恍?shù),先將小數(shù)點(diǎn)向右移動(dòng)兩個(gè)位數(shù),然后再利用Math.round()方法實(shí)行四舍五入計(jì)算,最后除以100,這樣就實(shí)現(xiàn)了保留保留兩位小數(shù),并且還具有四舍五入效果,但是這個(gè)并不完美,如果參數(shù)數(shù)字本身的小數(shù)位數(shù)大于等于2是可以的,如3.1415,但是如3或者3.0這樣的還是沒(méi)有完美的實(shí)現(xiàn),繼續(xù)看下面。
3.var xsd=value.toString().split("."),使用點(diǎn)"."value分隔成一個(gè)數(shù)組。
4.if(xsd.length==1){value=value.toString()+".00";return value;},如果數(shù)組的長(zhǎng)度是1,也就是說(shuō)不存在小數(shù),那么就會(huì)為這個(gè)數(shù)字添加兩個(gè)0,例如3會(huì)被轉(zhuǎn)換成3.00。
5.
if(xsd.length>1){
if(xsd[1].length<2){
value=value.toString()+"0";
}
return value;
}
if(xsd.length>1)用來(lái)判斷數(shù)字的長(zhǎng)度是否大于1,也就是數(shù)字是否具有小數(shù),如有小數(shù),但是小數(shù)的位數(shù)小于2,也就是類(lèi)似3.1這樣的,就會(huì)在后面加一個(gè)0,也就是會(huì)轉(zhuǎn)換為3.10。
二.相關(guān)學(xué)習(xí)教程:
1.Math.round()可以參閱javascript的Math.round()方法一章節(jié)。
2.parseFloat()函數(shù)可以參閱javascript的parseFloat()方法一章節(jié)。
3.toString()函數(shù)可以參閱javascript的Number對(duì)象的toString()方法一章節(jié)。
4.split()函數(shù)可以參閱javascript的String對(duì)象的split()方法一章節(jié)。
- js保留兩位小數(shù)方法總結(jié)
- javascript實(shí)現(xiàn)保留兩位小數(shù)的多種方法
- JS格式化數(shù)字保留兩位小數(shù)點(diǎn)示例代碼
- js浮點(diǎn)數(shù)保留兩位小數(shù)點(diǎn)示例代碼(四舍五入)
- js實(shí)現(xiàn)四舍五入完全保留兩位小數(shù)的方法
- JS保留兩位小數(shù) 四舍五入函數(shù)的小例子
- js保留兩位小數(shù)使用toFixed實(shí)現(xiàn)
- JS保留兩位小數(shù),多位小數(shù)的示例代碼
- javascript保留兩位小數(shù)的實(shí)現(xiàn)方法你了解嗎
- js保留兩位小數(shù)最簡(jiǎn)單的實(shí)現(xiàn)方法
相關(guān)文章
JavaScript 函數(shù)的定義-調(diào)用、注意事項(xiàng)
這篇文章主要介紹了JavaScript 函數(shù)的定義-調(diào)用、注意事項(xiàng),需要的朋友可以參考下2017-04-04
JavaScript實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器功能
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-03-03
根據(jù)判斷瀏覽器類(lèi)型屏幕分辨率自動(dòng)調(diào)用不同CSS的代碼
根據(jù)判斷瀏覽器類(lèi)型屏幕分辨率自動(dòng)調(diào)用不同CSS的代碼...2007-02-02
js中promise如何取到[[PromiseResult]]問(wèn)題
這篇文章主要介紹了js中promise如何取到[[PromiseResult]]問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
微信小程序如何使用Promise對(duì)wx.request()封裝詳解(附完整代碼)
微信小程序的wx.request是微信小程序最早生成的數(shù)據(jù)庫(kù)傳輸模式,數(shù)據(jù)傳輸簡(jiǎn)單明確,下面這篇文章主要給大家介紹了關(guān)于微信小程序如何使用Promise對(duì)wx.request()封裝的相關(guān)資料,需要的朋友可以參考下2023-03-03
Array.prototype.slice.apply的使用方法
arguments在JavaScript語(yǔ)法中是函數(shù)特有的一個(gè)對(duì)象屬性(Arguments對(duì)象),用來(lái)引用調(diào)用該函數(shù)時(shí)傳遞的實(shí)際參數(shù)。2010-03-03
JavaScript中的this/call/apply/bind的使用及區(qū)別
這篇文章主要介紹了JavaScript中的this/call/apply/bind的使用及區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03

