当前位置: 首页 > news >正文

js实现定时刷新,并设置定时器上限

定时器
在js中,有两种定时器:

  1. 倒计时定时器
    倒计时定时器,也叫延时定时器或一次性定时器
    功能:倒计时多长时间后执行某个动作
    语法:setTimeout(function, timeout);
    返回值:int类型,当前定时器是页面的第几个定时器,就返回几
    执行频率:只执行一次
var timer2 = setTimeout (function(){console.log("倒计时定时器执行了"); // 2秒后执行,仅执行一次
}, 2000);
  1. 间隔定时器
    间隔定时器,也叫反复性定时器或间歇性定时器
    功能:每间隔多长时间就执行某个动作
    语法:setInterval(function, timeout);
    返回值:int类型,当前定时器是页面的第几个定时器,就返回几
    执行频率:只要不关闭,会一直执行
var timer2 = setInterval(function(){console.log("间隔定时器执行了"); // 每隔2秒执行一次
}, 2000);
  1. 实践应用
    在PC端扫码支付的时候,可以通过倒计时定时器和间隔定时器来实现对订单支付状态的感知。比起通过websocket双向通信,更简单,几行代码就可以搞定
// 倒计时定时器,假设支付订单失效时间是5分钟,那么设置一个倒计时定时器,从发起支付后开始倒时间,超过5分钟后,支付失败,跳转到订单明细页面setTimeout(function () {window.location.href = '订单明细页面';}, 300000);
// 间隔定时器,每间隔2秒查询一次订单支付状态,若订单支付成功,跳转到订单明细页面
setInterval(function() {$.ajax({url: '查询订单支付状态',type: 'get',dataType: 'json',data: {order_id: order_id},success: function (data) {if (data === 1) {window.location.href = '订单明细页面‘;}}})
}, 2000);
http://www.lryc.cn/news/226186.html

相关文章:

  • 常用Linux命令
  • 【C++】获取指定点所在屏幕的尺寸
  • 软文发布如何选择对应的媒体
  • Django如何创建表关系,Django的请求声明周期流程图
  • 微服务-我对Spring Clound的理解
  • 安防监控EasyCVR视频汇聚平台无法接入Ehome5.0是什么原因?该如何解决?
  • 机器学习——逻辑回归
  • 自动驾驶学习笔记(七)——感知融合
  • 【Java0基础学Java第八颗】 -- 继承与多态 -- 多态
  • 玩转ansible之参数调试和文件操作篇
  • JVM虚拟机:垃圾回收器之Parallel Old(老年代)
  • Stream流的groupingBy
  • 如何在不结束tcpdump的情况下复制完整的pcap
  • maven POM文件总体配置说明
  • 49.批处理命令(1/2)
  • react类式组件的生命周期和useEffect实现函数组件生命周期
  • ARM 基础学习记录 / 异常与GIC介绍
  • java压缩pdf体积,图片体积
  • Ubuntu(WSL2) 安装最新版本的 GCC
  • lua 时间差功能概略
  • 【C++11】左值引用,右值引用,移动/复制构造,完美转发
  • 解决找不到x3daudio1_7.dll的方法,快速解决x3daudio1_7.dll丢失问题
  • LeetCode:2300. 咒语和药水的成功对数(C++)
  • 【Spring生命周期核心底层源码之剖析】
  • 关于Thread.sleep方法的一些使用
  • MeterSphere | 前端入参加密
  • 微服务如何做负载均衡?
  • C++高级编程:构建高效稳定接口与深入对象设计技巧
  • Qt——连接mysql增删查改(仓库管理极简版)
  • Panda3d 场景管理