JavaScript定时器(setTimeout和setInterval)的用法技巧

这篇具有很好参考价值的文章主要介绍了JavaScript定时器(setTimeout和setInterval)的用法技巧。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.满足特定条件时才执行后续步骤。

  • 核心代码:
    //初始化
    let isPass = false;

    //只有满足特定条件(在这里为:isPass为true时)时,才执行下一步操作
    let timeout = setInterval(() => {
      if (isPass) {
        //这里写要执行的后续方法
        //xxx
        console.log('isPass为true了,这里可以执行下一步操作啦');
        //清空定时器
        clearInterval(timeout);
      } else {
        console.log('isPass为false,不让走哦');
      }
    }, 500)

    //这里是人工转换,实际业务中一般由接口或者业务逻辑改变
    setTimeout(() => {
      isPass = true
    }, 3000)

  • 案例图片:

JavaScript定时器(setTimeout和setInterval)的用法技巧,js,javascript,前端,开发语言

  • 场景解析:诸如Promise的情形,只有接口请求成功后才会执行下一步。有时候不方便使用Promise或者特定情形下,可以借助此定时器(setInterval)方法解决。

  • 友情提醒:业务处理完成后,一定要清空clearInterval)对应定时器。

2.实现“节流操作”。

  • 核心代码:
    //初始化参照值
    let isPass = false;

    var btn = document.querySelectorAll('.btn')[0]
    btn.onclick = function () {
      //不满足条件直接return掉
      if (isPass) {
        console.log('小gege不要心急哦,请稍后再试嘛~');
        return false;
      }
      //这里写要执行的下一步方法
      //xxx
      console.log('已经点击执行了');
      //下一步方法xxx执行后改变参照值状态
      isPass = true;
      //每3s才能点击执行一次
      setTimeout(() => {
        isPass = false
      }, 3000)
    }
  • 案例图片:

JavaScript定时器(setTimeout和setInterval)的用法技巧,js,javascript,前端,开发语言

  • 场景解析:需要使用“节流”的业务场景,可借助次定时器setTimeout)的方法解决。

 文章来源地址https://www.toymoban.com/news/detail-551282.html

到了这里,关于JavaScript定时器(setTimeout和setInterval)的用法技巧的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 定时器的设置和清除setTimeout、setInterval、setImmediate-NodeJs

    JS是单线程运行逻辑,所有的程序默认在一个线程执行,出现排队执行。所有的定时器中,回调函数会在主线程后事件队列中执行。              一次性定时器的 开启:当间隔时间到了,会调用 一次 回调函数,间隔时间的单位是毫秒。               var timer=setTimeout(回

    2024年02月04日
    浏览(44)
  • Vue3 setup语法糖销毁一个或多个定时器(setTimeout或setInterval)

    如果在页面/组件增加了定时器,就算跳转到其他页面,定时器也不会被清理,这时候就需要手动清理,不然会有意想不到的bug,也会影响性能。 setTimeout是只执行一次,setInterval是循环执行,以下是用setTimeout举例子,如果想要用setInterval,替换一次方法就行。 setTimeout替换成

    2024年02月13日
    浏览(52)
  • JavaScript的定时器用法详解

    ●在 js 里面,有两种定时器,倒计时定时器 和 间隔定时器 ○倒计时定时器也叫一次性定时器或者叫延时定时器 ○间隔定时器也叫间歇定时器或者叫反复性定时器 倒计时定时器 ●倒计时多少时间以后执行函数 ●语法: setTimeout(要执行的函数,多长时间以后执行) ●会在你设

    2024年02月14日
    浏览(41)
  • JS 定时器setInterval()

    过多的就不描述了,可以直接参考官方文档: 官方文档:https://developer.mozilla.org/en-US/docs/Web/API/setInterval 参考文档:https://www.jianshu.com/p/55b4eb04b1d3 直接上干货 setInterval(参数1,参数2) setInterval(方法名, 1000 * 60 * 1); 描述:定时执行 间隔执行 注意: 1.参数1可以是一个匿名函数 也可以是

    2024年02月13日
    浏览(56)
  • js:定时器setInterval、clearInterval的使用

    定时器:可以在固定时间间隔,重复调用一个函数 文档 https://developer.mozilla.org/zh-CN/docs/Web/API/setInterval 常用的语法 为了避免this指向问题,一般使用箭头函数 输出结果

    2024年02月04日
    浏览(46)
  • 记录--你敢信?比 setTimeout 还快 80 倍的定时器

    很多人都知道, setTimeout 是有最小延迟时间的,根据MDN 文档 setTimeout:实际延时比设定值更久的原因:最小延迟时间中所说: 在浏览器中, setTimeout() / setInterval() 的每调用一次定时器的最小间隔是 4ms,这通常是由于函数嵌套导致(嵌套层级达到一定深度)。 在HTML Standard规范

    2024年01月24日
    浏览(44)
  • JavaScript中两种定时器和清除定时器的使用

    ​ 定时器就是在一段特定的时间后执行某段程序代码。 以指定的时间间隔(时间单位为毫秒)调用一次函数的定时器。 轮循定时器是以指定的时间间隔(时间单位为毫秒)重复调用一个函数的定时器。 clearTimeout(timeoutID) :清除只执行一次的定时器(setTimeout函数)。 timeoutID 为

    2024年02月13日
    浏览(42)
  • Python中的定时器用法:Timer定时器和schedule库

    目录 一、引言 二、Timer定时器 1、Timer定时器的原理 2、Timer定时器的使用方法 3、Timer定时器的实际应用案例 三、schedule库 1、schedule库的原理 2、schedule库的使用方法 3、schedule库的实际应用案例 四、Timer定时器和schedule库的比较 1、功能差异 2、适用场景 五、实际应用案例 六、

    2024年01月16日
    浏览(71)
  • uni-app使用plus本地推送通知栏信息,不使用第三方个推实现消息在线统一推送、消息通知(MQTT、WebSocket、setInterval定时器)

    plus.push.createMessage() 因项目一直是运行在内网,所以不支持使用uni-push等运行在公网的第三方个推渠道。 那就只能使用 plus.push.createMessage() ,示例代码如下: 参数解释: content : ( String 类型) 必选,消息显示的内容,在系统通知中心中显示的文本内容。 payload : ( String 类型 ) 可

    2024年02月15日
    浏览(45)
  • javaScript定时器函数

    js 定时器有以下两个方法: setInterval() ,setTimeout() 作用  这个函数可以将一个函数每隔一段时间执行一次 返回值  返回一个Number类型的数据,这个数字用来作为定时器的唯一标识  可以用clearInterval()关闭setInterval()

    2024年02月08日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包