JavaScript 格式数字,始终为 3 位数字
可能重复:
如何使用 JavaScript 创建 Zerofilled 值?
我必须输出一个必须始终包含 3 位数字的天数.它必须写成 003 而不是 3,而不是 12 它必须写成 012.如果大于 100 则不格式化输出.我想知道是否有我可以使用的正则表达式或一些快速的内联脚本,或者我必须创建一个应该这样做并返回结果的函数.谢谢!
I have to output a day number that must always have 3 digits. Instead of 3 it must write 003, instead of 12 it must write 012. If it is greater than 100 output it without formatting. I wonder if there's a regex that I could use or some quick in-line script, or I must create a function that should do that and return the result. Thanks!
推荐答案
怎么样:
zeroFilled = ('000' + x).substr(-3)
对于任意宽度:
zeroFilled = (new Array(width).join('0') + x).substr(-width)
根据评论,这似乎更准确:
As per comments, this seems more accurate:
lpad = function(s, width, char) {
return (s.length >= width) ? s : (new Array(width).join(char) + s).slice(-width);
}
相关文章