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

js 异步的问题,settimeout的问题

js 异步的问题,settimeout的问题

幕布斯6054654 2018-11-20 17:13:21
var i = 0, timer, j = 0;while(i++ < 5) {   timer = window.setTimeout(function(){     j++;     alert(j);   }, 1000); } clearTimeout(timer);输出的是1,2,3,45怎么没输出?还有为什么是这样输出的?他不是每次都赋值覆盖了吗?怎么还会执行?顺序是什么?clearTimeout这语句是在什么时候执行的如果稍微改下var i = 0, timer, j = 0;while(i++ < 5) {  timer = window.setTimeout(function(){    j++;    alert(j);  }, i*1000);}clearTimeout(timer);这样就是每隔一秒输出嘛,如果上面的问题解决了,那么没毛病再继续改    var i = 0, timer, j = 0;    while(i++ < 5) {      timer = window.setTimeout(function(){        j++;        alert(j);      }, j*1000);    }clearTimeout(timer);这个时候,他是同时输出的,为什么跟上面用i的不一样?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 525 浏览
慕课专栏
更多

添加回答

举报

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