setTimeOut和setInterval方法

for (var i = 1; i <= 10; i++) {

            setTimeout(function () {

                alert(i);

            },2000);

        }

因为js是单线程的语言,所以在使用setTimeout方法时,程序会先执行其他的代码,把延时函数放到任务列队中,当到了指定的时间后,在查看当前的任务列队是否是空的,如果是空的则会立即执行,如果不是,则会等待前面的代码执行完成之后,才开始执行。

因此,上面的代码中,始终弹出的i值是11,而不是从1开始弹出。

var timeOutId=  setTimeout(function () {

            alert("aaa");

      }, 2000);

      clearTimeout(timeOutId);

调用此方法时,会返回一个数值ID,利用这个ID可以取消尚未执行的调用计划。

setInterval方法和上面的方法用法类似,不再解释。

posted @ 2016-04-15 15:21  8932809  阅读(187)  评论(0编辑  收藏  举报