2012-04-23 59 views

回答

2

如何

('000' + i).substr(-3); 
+0

這是一個很好的答案 – iamwhitebox 2012-04-23 23:44:19

1

所以像這樣?

function number_pad(num,len) { 
    num = ""+num; 
    while(num.length < len) num = "0"+num; 
    return num; 
} 
// Usage: number_pad(i,3); 

可替代地,延伸的原生對象:

Number.prototype.pad(len) { 
    var num = ""+this; 
    while(num.length < len) num = "0"+num; 
    return num; 
} 
// Usage: i.pad(3); 

供將來參考,這被稱爲ZEROFILL或零填充。

+0

哇!我有一個模糊的想法,它會看起來像這樣,謝謝 – iamwhitebox 2012-04-23 23:39:25

1
function paddedNumber(n) { 
    // A string containing the fully padded zero value. 
    var zeroes = "000"; 
    // The number as a string. 
    var numstr = "" + n; 
    var nDigits = numstr.length; 
    // Keep any sign at the front. 
    var sign = ""; 
    if (/^[\+\-]/.test(numstr)) { 
    sign = numstr.charAt(0); 
    numstr = numstr.substring(1); 
    } 
    // Concatenates the number with just enough zeroes. 
    // No padding if itoa is already longer than the pad. 
    return sign + zeroes.substring(nDigits) + numstr; 
}