zoukankan      html  css  js  c++  java
  • JavaScript定时器:setTimeout()和setInterval()

    1 超时调用setTimeout()

    顾名思义,超时调用的意思就是在一段实际之后调用(在执行代码之前要等待多少毫秒)

    setTimeout()他可以接收两个参数:

    1 要执行的代码或函数

    2 毫秒(在执行代码之前要等待多少毫秒)

    function test(){
        alert("孙悟空");
    }
    setTimeout(test,2000);  //2s后弹出 “孙悟空”              

    clearTimeout()

    clearTimeout,表示清除定时器,可以用它取消未执行的调用

    var timmer=function test(){
        alert("孙悟空");
    }
    setTimeout(test,2000);  //2s后弹出 “孙悟空”        
    clearTimeout(timmer);       //取消定时器,因为前者在两秒后调用,调用之前已经取消相当于什么也没发生

    2 间歇调用setInterval()

    间歇调用就是指定的时间内不断地重复执行代码,大白话就是“一会调用一次,一会调用一次”

    setInterval()它也接收两个参数,与前者相同:

    1 要执行的代码或函数

    2 毫秒(在执行代码之前要等待多少毫秒)

    function test(){
        alert("孙悟空");
    }
    setInterval(test,2000);  //每隔2s后弹出一次 “孙悟空”      

    clearInterval()

    clearInterval()与clearTimeout()使用方法相同,也是清除定时器方法

    var num=0;
    var max=10;
    function test(){
        num++;
        if (num==max){
            clearInterval(timer);                      //累加到10时清除清定时器
            alert("这里有"+num+"个孙悟空");          //这里有10个孙悟空
        }
    }
    timer=setInterval(test,500);    

    在上面的例子中,变量num每隔0.5s递增一次,当递增到最大值时就会清除先前设置的定时器(间歇调用)。

    这个模式也可以用超时调用来实现

    var num=0;
    var max=10;
    function test(){
        num++;
        if (num<max){
            setTimeout(test,500);
        }else{
            alert("这里有"+num+"个孙悟空")
        }
    }
    setTimeout(test,500);
    最近在维护一个前端交流群,群内有各个领域的大佬,各路妹子,程序员鼓励师等你来撩,欢迎加入,群号:249620372
  • 相关阅读:
    升讯威周报与工时统计系统 V3
    浅谈互联网时代的一万小时定律:方向与格局更重要
    GitHub开源:SQLite 增强组件 Sheng.SQLite.Plus
    GitHub开源:升讯威 SQLite 增强组件 Sheng.SQLite.Plus
    centos7 配置IPV6
    Vertica节点故障后的恢复经过
    windows下杀掉指定端口的应用
    解决QT Fault tolerant heap shim问题
    vertica生成查询计划失败:Request size too big
    IDEA配置aliyun的maven源
  • 原文地址:https://www.cnblogs.com/wangyue99599/p/7384358.html
Copyright © 2011-2022 走看看