为什么定时器加了alert就无限执行了

baidu_37672158 2017-03-28 12:29:34
var num=0;
var max=3;
var i=setInterval(function()
{
num++
alert(num)
if(num=>max)
{
clearInterval(this)
alert('3秒到了')
}

},1000)

这段代码很有意思,搞不懂为什么alert后就变成无限执行了,而去掉后就正常?
...全文
184 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 1 楼 jslang 的回复:
你的代码不加alert也会无限执行

var num=0;
var max=3;
var i=setInterval(function()
{	
num++
alert(num)	
 if(num>=max)		//大于等于号是“>=”,不是“=>”。用“=>”就成“箭头函数”了
 {
 	clearInterval(i)	//这里应该是 i
 	alert('3秒到了')
 }

},1000)

楼猪以为不alert就不执行了,只是隐藏执行没反应而已
xiaojunjor 2017-03-28
  • 打赏
  • 举报
回复
应该到一定条件就取消clearInterval(i)
天际的海浪 2017-03-28
  • 打赏
  • 举报
回复
你的代码不加alert也会无限执行

var num=0;
var max=3;
var i=setInterval(function()
{	
num++
alert(num)	
 if(num>=max)		//大于等于号是“>=”,不是“=>”。用“=>”就成“箭头函数”了
 {
 	clearInterval(i)	//这里应该是 i
 	alert('3秒到了')
 }

},1000)

87,989

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧