为了账号安全,请及时绑定邮箱和手机立即绑定

问一下,var t=setTimeout("alert('Hello!')",5000);这段代码有什么意义?

问一下,var t=setTimeout("alert('Hello!')",5000);这段代码有什么意义?

88mm52080 2016-04-01 21:17:14
<script type="text/javascript"> function tinfo(){   var t=setTimeout("alert('Hello!')",5000);} </script> </head> <body> <form>   <input type="button" value="start" onClick="tinfo()"> </form> </body> 问一下这里面的有什么意义?直接写成setTimeout("alert('Hello!')",5000);也可以达到目的啊?
查看完整描述

4 回答

已采纳
?
路北

TA贡献18条经验 获得超8个赞

setTimeout()还有一个对应的函数clearTimeout(),用于取消setTimeout()。

页面上如果有很多setTimeout()。你肯定要指定是某一个setTimeout()。

这时就可以用他的返回值也就是你上面的t。 

clearTimeout(t); // 这种方式告诉浏览器,麻烦把t这个setTimeout()取消掉。


查看完整回答
1 反对 回复 2016-04-02
?
qq_留待天明_0

TA贡献3条经验 获得超2个赞

延迟5秒弹出 hello!提示框

查看完整回答
反对 回复 2016-04-02
?
堂堂堂堂糖糖糖童鞋

TA贡献101条经验 获得超58个赞

这段代码的作用是:5秒后执行alert('Hello!');起一个定时的作用,但我们通常使用setTimeout是让它循环执行某一个函数,形成递归调用,至于为何会又一个返回值,方便我们对定义的定时器进行销毁,因为非常占内存的.看一下这段示例:

var t = setTimeout("tinfo()", 5000);

<script type="text/javascript">
		
		var t; 
		var counter = 0;
		function tinfo() {
			alert('hello');
			counter++;//执行次数
			t = setTimeout("tinfo()", 2000);//定义定时器
			if(counter == 5) {//达到5次
				clearTimeout(t);//销毁定时器
			}
		}	
		tinfo();
	</script>


查看完整回答
反对 回复 2016-04-01
  • 4 回答
  • 0 关注
  • 2736 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信