javascript添加前置0(補零)的幾種方法
前言
眾所周知JavaScript中的數(shù)字是沒有前置0的,因此需要我們自己進行操作來添加前置0,而且還得轉(zhuǎn)換成字符串。
假如生成一個是一共是4位的有前置0的數(shù)據(jù),通常我們能想到的方法是這樣子的:
function addPreZero(num){
if(num<10){
return '000'+num;
}else if(num<100){
return '00'+num;
}else if(num<1000){
return '0'+num;
}else{
return num;
}
}
這種方式的思路比較簡單,根據(jù)當(dāng)前數(shù)據(jù)的位數(shù)來補充相應(yīng)個數(shù)的前置0;不過這樣的算法寫起來比較麻煩,如果需要的前置0非常多的話,那么得寫很多的if...else。
還是基于這種思路,我們可以先算出這個數(shù)字有多少位,然后直接補上相應(yīng)的0就行了:
function addPreZero(num){
var t = (num+'').length,
s = '';
for(var i=0; i<4-t; i++){
s += '0';
}
return s+num;
}
這種方式的實現(xiàn),是根據(jù)當(dāng)前num的位數(shù),來計算出所有的前置0,然后再拼接上num。
在這個基礎(chǔ)上,我們還可以這樣考慮:比如需要一共是10位的有前置0的數(shù)據(jù),那么首先不管當(dāng)前數(shù)字是多少位的,都先補上9個前置0,然后再截取這個字符串最后的10位,那么獲取到的就是需要的數(shù)據(jù):
function addPreZero(num){
return ('000000000'+num).slice(-10);
}
總結(jié)
以上就是這篇文章的全部內(nèi)容了,實現(xiàn)想要的結(jié)果很多的方法,我們應(yīng)該盡可能的想出更多的方法,一方面能夠拓展我們的思維,另一方面也能讓我們選擇出更好的方式。希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
相關(guān)文章
一道超經(jīng)典js面試題Foo.getName()的故事
Foo.getName算是一道比較老的面試題了,大致百度了一下在17年就有相關(guān)文章在介紹它,下面這篇文章主要給大家介紹了關(guān)于一道超經(jīng)典js面試題Foo.getName()的相關(guān)資料,需要的朋友可以參考下2022-03-03
bootstrap jquery dataTable 異步ajax刷新表格數(shù)據(jù)的實現(xiàn)方法
這篇文章主要介紹了bootstrap jquery dataTable 異步ajax刷新表格數(shù)據(jù)的實現(xiàn)方法,需要的朋友可以參考下2017-02-02
JavaScript中防抖和節(jié)流的實戰(zhàn)應(yīng)用記錄
防抖與節(jié)流都是用來限制用戶頻發(fā)觸發(fā)事件的機制,下面這篇文章主要給大家介紹了關(guān)于JavaScript中防抖和節(jié)流的實戰(zhàn)應(yīng)用,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-04-04
Easyui Tree獲取當(dāng)前選擇節(jié)點的所有頂級父節(jié)點
這篇文章主要介紹了Easyui Tree獲取當(dāng)前選擇節(jié)點的所有頂級父節(jié)點,以及easyUI Tree顯示選中節(jié)點的所有父節(jié)點的實現(xiàn)代碼,需要的朋友可以參考下2017-02-02
Javascript 調(diào)用 ActionScript 的簡單方法
在Flex中,ActionScript調(diào)用Javascript是比較簡單的,說白了就是,在html里,怎么調(diào)用Javascript,在ActionScript就怎么調(diào)用就可以了。接下來通過本文給大家介紹js 調(diào)用 actionscript方法,感興趣的朋友一起看看吧2016-09-09
javascript獲取select標(biāo)簽選中的值
這篇文章主要介紹javascript獲取select標(biāo)簽選中的值方法,比較實用,需要的朋友可以參考下。2016-06-06

