如何使用javascript迭代数字001 002 ... 010 011 012 ... 100 101 102 ... 我尝试如下,它的工作原因是数字超过100,但是数字低于100,它不起作用。 请教我更好的方法。
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Pages</title>
</head>
<body>
<script language="JavaScript">
document.write('<table width="650"><tr><td>');
num = 123;
var i, j, k = num;
numlen = num.length;
if (numlen == 1 ) {
for (var i=1; (i<num); i++) {
document.write('00'+i+' ');
}
}
else if (numlen == 2) {
for (var i=1; (i<10); i++) {
document.write('00'+i+' ');
}
for (var i=10; (i<=num); i++) {
document.write('0'+i+' ');
}
}
else {
for (var i=1; (i<10); i++) {
document.write('00'+i+' ');
}
for (var i=10; (i<100); i++) {
document.write('0'+i+' ');
}
for (var i=100; (i<=num); i++) {
document.write(i+' ');
}
}
document.write('</td></tr></table>');
</script>
</body>
答案 0 :(得分:0)
试试这个:
function pad(s)
{
while (s.length < 3)
s = '0' + s;
return s;
};
// your code
for (var i=1; i<num; i++) {
document.write(pad(''+i));
}
你不需要(也不应该)不同的循环。一个人会这样做,只需确保用正确数量的前导零填充每个数字,调用“pad”函数。
答案 1 :(得分:0)
for (var i=1; i<1000; i++) {
document.write(((i+1000)+"").substr(1));
}
答案 2 :(得分:0)
这个怎么样 - 非常有效(比使用while
填充更多):
var i;
for (i = 1; i <= upperLimit; i++)
{
var text = '00' + i;
document.write(text.substr(text.length - 3, 3);
}