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
  • 相关阅读:
    [原创]在Windows平台使用msvc(cl.exe) + vscode编写和调试C/C++代码
    几种动态调用js函数方案的性能比较
    z-index随笔
    [原]配置多个密钥免密码登录服务器简明教程
    [转]为 windows cmd 设置代理
    [原创]实现多层DIV叠加的js事件穿透
    [转]linux terminal中使用proxy
    [转]jquery中innerWidth(),outerWidth(),outerWidth(true)和width()的区别
    [转]React表单无法输入原因----约束性和非约束性组件
    [原创]aaencode等类似js加密方案破解方法
  • 原文地址:https://www.cnblogs.com/wangyue99599/p/7384358.html
Copyright © 2011-2022 走看看