前言
众所周知javascript中的数字是没有前置0的,因此需要我们自己进行操作来添加前置0,而且还得转换成字符串。
假如生成一个是一共是4位的有前置0的数据,通常我们能想到的方法是这样子的:
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;
}
}
这种方式的思路比较简单,根据当前数据的位数来补充相应个数的前置0;不过这样的算法写起来比较麻烦,如果需要的前置0非常多的话,那么得写很多的if...else。
还是基于这种思路,我们可以先算出这个数字有多少位,然后直接补上相应的0就行了:
function addprezero(num){
var t = (num+'').length,
s = '';
for(var i=0; i<4-t; i++){
s += '0';
}
return s+num;
}
这种方式的实现,是根据当前num的位数,来计算出所有的前置0,然后再拼接上num。
在这个基础上,我们还可以这样考虑:比如需要一共是10位的有前置0的数据,那么首先不管当前数字是多少位的,都先补上9个前置0,然后再截取这个字符串最后的10位,那么获取到的就是需要的数据:
function addprezero(num){
return ('000000000'+num).slice(-10);
}
总结
以上就是这篇文章的全部内容了,实现想要的结果很多的方法,我们应该尽可能的想出更多的方法,一方面能够拓展我们的思维,另一方面也能让我们选择出更好的方式。希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。
更多javascript添加前置0(补零)的几种方法。