我在 Javascript 中有一个数字,我知道它小于 10000 并且也是非负的。我想将其显示为四位数字,并带有前导零。还有比下面这个更优雅的吗?
if(num<10) num="000"+num;
else if(num<100) num="00"+num;
else if(num<1000) num="0"+num;
我想要一些内置于 Javascript 中的东西,但我似乎找不到任何东西。
我能想到的最简单的方法是:
("000" + num).slice(-4)
填充后的数字是一个字符串。
当您将数字添加到字符串时,它会转换为字符串。
字符串具有切片方法,该方法返回字符串的固定长度片段。
如果 length 为负数,则返回的字符串将从字符串末尾开始切片。
to test:
var num=12;
console.log(("000" + num).slice(-4)); // Will show "0012"
当然,这只适用于最多 4 位的正整数。一个稍微复杂的解决方案将处理正整数:
'0'.repeat( Math.max(4 - num.toString().length, 0)) + num
通过重复添加零来创建字符串,只要位数(字符串长度)小于 4
添加数字,然后也将其转换为字符串。
Edit:从现在开始你应该使用这个函数:
String(num).padStart(4,'0')
它仍然不能处理负数......
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)