问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

js 如何把小于10的数字前面补“0”

发布网友 发布时间:2022-04-22 10:06

我来回答

4个回答

懂视网 时间:2022-04-22 14:27

例如我们希望输出的数字长度是固定的,假设为10,如果数字为123,则输出0000000123,不够位数就在之前补足0。当然你也可以根据本章的代码自行更改想补得数字。

这里提供了三种不同的方式实现JS代码给数字补0 的操作:

方法一:迭代方式实现

function PrefixInteger(num, length) {
 for(var len = (num + "").length; len < length; len = num.length) {
 num = "0" + num;
 }
 return num;
}

方法二:转为小数

function PrefixInteger(num, length) {
 var decimal = num / Math.pow(10, length);
 //toFixed指定保留几位小数
 decimal = decimal.toFixed(length) + "";
 return decimal.substr(decimal.indexOf(".")+1);
}

方法三:更高效

function PrefixInteger(num, length) {
 return (Array(length).join('0') + num).slice(-length); 
}

测试:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JavaScript 数字前补“0”</title>
<body>
<script>
 //迭代方式实现
 function padding1(num, length) {
 for(var len = (num + "").length; len < length; len = num.length) {
 num = "0" + num;
 }
 return num;
 }
//转为小数
 function padding2(num, length) {
 var decimal = num / Math.pow(10, length);
 //toFixed指定保留几位小数
 decimal = decimal.toFixed(length) + "";
 return decimal.substr(decimal.indexOf(".")+1);
 }
 //填充截取法
 function padding3(num, length) {
 //这里用slice和substr均可
 return (Array(length).join("0") + num).slice(-length);
 }

 function test(num, length) {
 document.write(padding1(num, length));
 document.write("<br>");
 document.write(padding2(num, length));
 document.write("<br>");
 document.write(padding3(num, length));
 }
 test(123, 10);
</script>
</body>
</html>

结果:

0000000123 
0000000123 
0000000123

热心网友 时间:2022-04-22 11:35

var h = 1;
h = /^\d$/.test(h) ? '0' + h : h;

热心网友 时间:2022-04-22 12:53

判读数字是否小于10,如果时,就返回“0” + 数字。

热心网友 时间:2022-04-22 14:28

直接用"0"+当成字符串拼上就行了追问怎么写?
if(h<10){var h=0+h;} ??

追答不是这样的,你的0一定要加”“引号,变成字符串拼接才行,因为01这样的数据,是不可能以number类型存在的

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
四川省综合素质a级证书? 华为手机怎么还原微信聊天记录 华为手机微信内容恢复方法 股权转让的主要方式有哪些 股权转让有哪几种方式 股东转让的几种形式是 股东转让的几种形式 高考多少分能上衡阳师范学院南岳学院 你们被玖富金融骗,后期有还款吗? 玖富悟空理财2022年最新消息还有希望吗?悟空理财最新情况(悟空理财可信... 同等责任交通事故致人死亡是否追究刑事责任 山东淄博2015职工退休工资计算办法怎么计算啊? 山东社保网一六年退休金上调方法 山东省企业退休人员养老金上调标准是怎样的 12年山东企业退休养老金增长多少 怎么计算我的阳历呢?出生是1996.1.9是什么星座的呢?求高手回答 金牛座在什么情况下最色 92年农历4月16是什么星座 阳历5.4是什么星座 求夏茗悠的全部小说~~~邮箱Taurus_peng@sina.com 秦霄贤用什么手机? 问是什么星座 十二星座对约会对象一直玩手机是什么样一种反应 小米里面有一个miui-ota-taurus-JLB20安装包可以删掉吗? 煲仔饭的做法 应该注意些什么 抽烟机风门关不上怎么办 樱花油烟机风门无法打开。请教如何处理。 抽烟机风门合不住是怎么回事 油烟机风门能安装2个风门吗。 抽油烟机吹不开风门如何解决 双电机油烟机风门的作用 《三国演义》颜良,文丑为何被关羽秒杀?到底实力如何? 被关羽秒杀的颜良文丑二人武力究竟是什么水平? 巅峰时期的关羽,能在正面击败颜良文丑吗? 颜良、文丑在三国能排第几?为何关羽能一刀一个? 颜良和文丑的实力怎么样?关羽为什么能把他们瞬间秒杀? 《三国演义》中被关羽秒杀的颜良文丑究竟实力如何? 电源排行榜哪家好? 以身相许。 日照分析图怎么整出来的·?天正建筑 以身相许 以身相许是什么意思? 以身相许是什么意思??什么是以身相许啊?? 要用天正软件8.2版做日照分析,建筑之间有地势高差关系,如何做?还有计算精度有啥用? 8090的爱情 文章 天正 日照分析怎么做 详细步骤求高手指点 什么叫以身相许 天正建筑能算夏季日照分析么? 这男人喜欢我吗?以身相许是什么意思? 以身相许下一句神回复是什么? 以身相许换个说法怎么说