Sunly

Web前端的学习之旅


  • 首页

  • 分类

  • 归档

  • 标签

setInterval和setTimeout详解

发表于 2017-04-15   |   分类于 js   |  

注意两种函数的返回值、参数、this对象指向

返回值是一个ID,根据此ID号可以用来取消调用
参数是一个函数(或字符串)和一个数值时间
this对象指向window,非严格模式下

  1. 使用setInterval函数来设置每隔一段时间执行一个函数
    基本思想: 调用函数,当达到条件时清除ID

    (function(){
        var num=0;
        var interId;
        function func(){
            num++;
            console.log("["+num+"]"+"  I'am a lovely girl!");
    
            if (num>=10) {
                clearInterval(interId);
                console.log("It's enough!");
            }
        }
        interId = window.setInterval(func,2000);
    })();
    
  2. 使用setTimeout函数来设置每隔一段时间执行一个函数;
    基本思想,首先调用,每次超时继续调用;

    (function(){
        var num = 0;
        var max  =10;
        function func(){
            num++;
            console.log("["+num+"]"+"  I'am a lovely girl!");
            if (num<max) {
                window.setTimeout(func,1000);
            }
        }
        window.setTimeout(func,1000);
    })();
    

一般认为,使用超时调用来模拟间歇调用是一种最佳模式,在开发环境下,很少使用间歇调用,原因是后一个间歇调用可能会在前一个间歇调用结束之前启动。

1…111213…21
孙丽莹

孙丽莹

点点滴滴的Web前端的学习历程

21 日志
12 分类
16 标签
© 2017 孙丽莹
由 Hexo 强力驱动
主题 - NexT.Mist