这段JavaScript代码有几个问题谁帮我解释一下

functionstartTime(){vartoday=newDate();varh=today.getHours();varm=today.getMinutes();... function startTime()
{
var today=new Date();
var h=today.getHours();
var m=today.getMinutes();
var s=today.getSeconds();
m=checkTime(m);
s=checkTime(s);
document.getElementById('txt').innerHTML=h+":"+m+":"+s;
t=setTimeout('startTime()',500);
}
1.为什么h变量不用checktime函数来赋值?而m和s需要?
2.还有那个settimeout前面的t有什么用啊?
3.还有一个关键的问题就是startTime这个函数里面还有一个startTime函数,那么这个函数是怎么运行的啊,这个函数还没运行完又要运行一次啊,感觉这样好乱啊根本看不懂怎么办?
展开
 我来答
网海1书生
科技发烧友

2014-04-09 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26228

向TA提问 私信TA
展开全部
1、这个checkTime是个自定义函数,你要列出这个函数的内容我们才能知道为什么。我估计是给不足两位数的数字的前面添加0的,比如 8:4:6 这样不好看,也不符合习惯,改为 8:04:06 就顺眼了。通常小时的前面是不用加0的,所以h就无须用checktime来处理了。

2、t是setTimeout函数的返回值,这样的话如果想让setTimeout停止就可以用clearTimeout(t);来实现。当然,如果不需要这么做,也可以把t=省去,即setTimeout('startTime()',500);

3、那个500的意思是500毫秒,整个setTimeout函数的意思就是再过500毫秒就再次运行startTime这个函数,这样的话startTime函数就会一直循环运行下去。否则的话你的时钟就会只显示一次,然后就再也不会动了!
百度网友a353b9ec7
2014-04-08 · TA获得超过153个赞
知道小有建树答主
回答量:139
采纳率:0%
帮助的人:158万
展开全部
  1. 应该还有一个checkTime()方法的,

  2. 那个t在这里没用的,也许其他地方用到了?

  3. 通过setTimeout函数暂停一段时间后执行代码,可以实现一些特殊的效果

    这里意思就是500毫秒之后再执行一次setTimeout ,

    表现出来就是500毫秒刷新一次

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式