如何在JavaScript中输出带有前导零的数字

我可以用math.round舍入到小数位数的x位数,但是有没有办法舍入到小数点的左边?例如,如果我指定2个位置,则5变为05

阳光Mandy2020/03/12 17:54:48

https://gist.github.com/1180489

function pad(a,b){return(1e15+a+"").slice(-b)}

有评论:

function pad(
  a, // the number to convert 
  b // number of resulting characters
){
  return (
    1e15 + a + // combine with large number
    "" // convert to string
  ).slice(-b) // cut leading "1"
}
Tony伽罗米亚2020/03/12 17:54:48

您可以扩展Number对象:

Number.prototype.pad = function(size) {
    var s = String(this);
    while (s.length < (size || 2)) {s = "0" + s;}
    return s;
}

例子:

(9).pad();  //returns "09"

(7).pad(3);  //returns "007"
梅小宇宙2020/03/12 17:54:48
function zfill(num, len) {return (Array(len).join("0") + num).slice(-len);}