JavaScripe中數字前補零的方法
阿新 • • 發佈:2018-11-27
<html> <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) { if((num + "").length >= length) { return num; } return padding2("0" + num, length) } //轉為小數 function padding3(num, length) { var decimal = num / Math.pow(10, length); //toFixed指定保留幾位小數 decimal = decimal.toFixed(length) + ""; return decimal.substr(decimal.indexOf(".")+1); } //填充擷取法 function padding4(num, length) { //這裡用slice和substr均可 return (Array(length).join("0") + num).slice(-length); } //填充擷取法 function padding5(num, length) { var len = (num + "").length; var diff = length - len; if(diff > 0) { return Array(diff).join("0") + num; } return num; } 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)); document.write("<br>"); document.write(padding4(num, length)); document.write("<br>"); document.write(padding5(num, length)); document.write("<br>"); } test(123, 10); test(1234567890123, 10); </script> </body> </html>
輸出
0000000123
0000000123
0000000123
0000000123
000000123
1234567890123
1234567890123
4567890123
4567890123
1234567890123