原文出处:https://blog.csdn.net/qq_33212500/article/details/70242646

  • 自动结束的计时器
var timesRun = 0;
var interval = setInterval(function(){timesRun += 1;if(timesRun === 60){    clearInterval(interval);    }//do whatever here..
}, 2000);
var startTime = new Date().getTime();
var interval = setInterval(function(){if(new Date().getTime() - startTime > 60000){clearInterval(interval);return;}//do whatever here..
}, 2000);
var interval = setInterval(function(){timesRun += 1;var textNode = $('input[type="radio"][name="radioName'+questionNo+'"]:checked').parent().parent().find('input[type="text"]');console.log(textNode.val());if(textNode.val()  == '' || textNode.val() == undefined){//当节点没有值或者还未在页面上生成,则赋值console.log(textNode.length);textNode.val(inputValue);}else {//已经有值了,则清除停止clearInterval(interval);}
}, 500);

如果要在别的地方停止计时器,可以加一个全局变量(_stopTimer)解决:

    private _stopTimer = false;ionViewDidEnter() {if (this._stopTimer) {this.startTimer();}}ionViewDidLeave() {this._stopTimer = true;}private startTimer(): void {this._stopTimer = false;let myTimer = setInterval(() => {// 停止定时器if (this._stopTimer == true) {clearInterval(myTimer);return;}// 重复动作。。。}, 500);}

补充:

1、尽可能在setInterval中自己清除(停止)。
    2、如果将setInterval赋给一个全局变量,在其他地方ClearInterval进行清除有可能达不到效果。(原因:那边刚清除,这边可能又重新赋值了,惨痛的经历!)

2018-10-22 上面的补充感觉不合逻辑,划掉。 具体可参考:JS中setInterval()和clearInterval()的使用以及注意事项

setInterval设置停止和循环 (实用)相关推荐

  1. 前端控件--setInterval设置停止和循环

    注册界面点击手机60秒倒计时,需要用到setInterval,使用setInterval需要关闭它. var count = 60;var timeInterval = setInterval(fun ...

  2. setInterval设置停止和循环

    原文链接:http://caibaojian.com/setinterval-times.html 需要知道已经经过了多少次或者说过多久就会停止 var timesRun = 0; var inter ...

  3. 笔记——setInterval()设置停止和循环

    与setTimeout不同,setInterval会无限反复执行.可我非要用setInterval,又想要能让它听我号令,随时停止,要怎么做呢? 很简单-- 只需要把setInterval()赋值给一 ...

  4. Nodejs——setInterval设置停止的次数和时间

    需要知道已经经过了多少次或者说过多久就会停止 var timesRun = 0; var interval = setInterval(function(){ timesRun += 1; if(ti ...

  5. 关于setInterval如何停止循环

    关于setInterval如何停止循环 查了n久,其他csdn写的都是垃圾,完全浪费时间,不晓得他们做啥笔记. 需求是调用一次hCreate执行5次model方法,注意clearInterval清除定 ...

  6. ANSYS CFX 脚本详细设置,实现循环计算

    ANSYS CFX 脚本详细设置,实现循环计算 参考链接: https://www.zhihu.com/question/29498222

  7. diybox路由器设置教程_一个简单的无线路由器入门设置教程,非常实用

    原标题:一个简单的无线路由器入门设置教程,非常实用 分享给朋友们一个简单的无线路由器入门设置教程,教大家怎么使用无线路由器.如何设置使用,非常实用. 一.无线路由器基本使用方法 1.拿到手的无线路由器 ...

  8. 设置PowerPoint2007自动循环播放

    转载者: 英文版篮球ppt课件              来源: www.2ppt.cn 您的位置: 主页 > PowerPoint教程 > PowerPoint2007教程 > 设 ...

  9. JS setInterval(延时器)设置停止重启操作

    延时器的操作 设置延时器 setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式. 书写方式JS setInterval(function, milliseconds, p ...

最新文章

  1. 2021年大数据Hadoop(四):Hadoop发行版公司
  2. 我与Linux的相识之旅
  3. Windows下 安装Oracle Java 11 并设置环境变量
  4. 免费学python的软件-初学python编程,有哪些不错的软件值得一用?
  5. 面向过程与面向对象编程的区别和优缺点
  6. 新手入门深度学习 | 1-1:配置深度学习环境
  7. java内存对象模型
  8. webform 转 MVC 飞一般的感觉
  9. js 递归函数的使用及常用函数
  10. 10.32/10.33 rsync通过服务同步 10.34 linux系统日志 screen工具
  11. 新功能:阿里云负载均衡支持HTTP/2、WSS协议
  12. 59s计时器C语言程序步骤详解,51单片机00-59秒计时器 0-59s Timer
  13. 体验 Vista Speech Recognition,使梦想成为可能
  14. android 开发工具类,Android中常用开发工具类—持续更新...
  15. w ndows7浏览器网页,win7系统IE浏览器播放网页视频失败的解决方法
  16. 开启cdn后无法显示字体图标——CDN服务器跨域问题
  17. 小述银行软开~~(转)
  18. CSS 实现地图点位Marker
  19. FastAdmin遇到的坑
  20. Android inflate解析

热门文章

  1. 零基础学习PHP,详细教程
  2. Problem F: Frightful Formula
  3. [机器学习、Spark]Spark MLlib实现数据基本统计
  4. 一看就懂的NULLABLE、FIRST和FOLLOW集合
  5. android项目实战—博学谷 界面设计
  6. 我的世界服务器无限刷雪傀儡,我的世界:在游戏中没有见过的怪?雪傀儡可以制造“无限雪”...
  7. 性能测试工具Lighthouse
  8. 解决KindEditor无法安装flash插件实现图片批量上传
  9. javascript 分号_JavaScript中的分号
  10. AndroidStudio插件之PlantUML integration 画时序图