zoukankan      html  css  js  c++  java
  • js 定时器的用法和清除

    一、设置定时器

      window对象提供了两个方法来实现定时器的效果,

        分别是window.setTimeout()和window.setInterval。其中前者可以使一段代码在指定时间后运行;而后者则可以使一段代码每过指定时间就运行一次。它们的原型如下:

           window.setTimeout(code,millisec);

    var i = 0;
        //设置定时器(循环去执行)
        var timeId = setInterval(function () {
          i++;
          console.log('定时运行:' + i + '次')
        }, 500)
    
        //清理定时器
        my$('btn').onclick = function () {
          window.clearInterval(timeId)
        }

           window.setInterval(code,millisec);

    var i = 0;
        //设置定时器(一次性定时器)
        var timeId = setTimeout(function () {
          i++;
          console.log('定时运行:' + i + '次')
        }, 500)
        //清理定时器(这个定时器虽然只有一次,但是也得清理 既可以释放内存,也可以便于后边代码的判断。)
        my$('btn').onclick = function () {
          window.clearTimeout(timeId)
        }

       其中,code可以是用引号括起来的一段代码,也可以是一个函数名,到了指定的时间,系统便会自动调用该函数,当使用函数名作为调用句柄时,不能带有任何参数;

    而使用字符串时,则可以在其中写入要传递的参数。两个方法中的第二个参数是millisec,表示延时或者重复执行的毫秒数。

    二、清除定时器

       由于定时器在调用时,都会返回一个整形的数字,该数字代表定时器的序号,即第多少个定时器,所以定时器的清除要借助于这个返回的数字。

       定时器清除的方法:clearTimeout(obj)和clearInterval(obj)。(注意对于的定时器用对于的清除方法

  • 相关阅读:
    uni-appios端app白屏问题
    vue中倒计时假清除
    vue路由守卫
    JS函数命名规范
    VUE生成二维码
    移动端H5之css配置rem
    关于在vue中使用ui库样式无法修改的问题
    v28 error: resource android:attr/dialogCornerRadius not found.
    cocos2d: fullPathForFilename: No file found at script/jsb_prepare.js. Possible missing file
    android studio clean show: CreateProcess error=2, 系统找不到指定的文件。
  • 原文地址:https://www.cnblogs.com/wanguofeng/p/10592557.html
Copyright © 2011-2022 走看看