我在网页上用这个代码做了一个时钟,它可以正常工作,但是我想知道这段代码中的if {}语句是做什么的,我不知道它在做什么。
有人可以帮我吗? :D
function startTime() {
today = new Date();
h = today.getHours();
m = today.getMinutes();
s = today.getSeconds();
m = checkTime(m);
s = checkTime(s);
document.getElementById('reloj').innerHTML = h + ":" + m + ":" + s;
t = setTimeout('startTime()', 500);
}
function checkTime(i) {
if (i < 10) {
i = "0" + i
}
return i;
}
window.onload = function() {
startTime();
}
<span id="reloj"></span>
答案 0 :(得分:1)
您的代码中的if
如果i
的值小于10,则前缀为零
1 becomes 01
2 becomes 02
10 stays as 10
etc
这样可以使外观上的小时和分钟按预期显示。
格式有点误导-更好地写为
function checkTime(i){
if (i < 10) {
i = "0" + i;
}
return i;
}
答案 1 :(得分:0)
如果时间以一位数字表示,if语句基本上会添加一个前导零,就像不显示9分钟,而是显示为09分钟
答案 2 :(得分:0)
好吧,这似乎是在检查一个小时是否用两位数表示。
9:54的instea将是09:54
答案 3 :(得分:0)
i="0" + i
小时数少于10时,i被赋值为0,然后加到自身上,因为它是字符串,所以被串联起来。结果是09,08,07而不是9 8 7等。
function startTime(){
today=new Date();
h=today.getHours();
m=today.getMinutes();
s=today.getSeconds();
m=checkTime(m);
s=checkTime(s);
document.getElementById('reloj').innerHTML=h+":"+m+":"+s;
t=setTimeout('startTime()',500);}
function checkTime(i){
if (i<10)
{
i="0" + i
}
return i;}
window.onload=function(){startTime();}
<div id="reloj"></div>
答案 4 :(得分:0)
就像在代码中两次调用checkTime()函数一样
分钟和秒是
1 becomes 01
2 becomes 02
And 10 stays as 10
因此,如果我小于10,则会在其前面加上0。
注意:在这里,我的意思是参数您的代码每分钟调用一次此函数两次,第二秒一次调用
希望您清除