setInterval、clearInterval的回调函数,实现函数间调用的先后顺序
定义:
var waitUnitil=function (untillCallBack, nextStepCallBack, count) {
if (count == null) {
count = 0;
}
var timer = setInterval(function (ucb, ncb, c) {
var checkResult = ucb();
if (c == 100 || checkResult) {
clearInterval(timer);
ncb();
interval = null;
return;
}
console.log((c++) + "," + checkResult);
}, 10, untillCallBack, nextStepCallBack, count);
}
调用:
waitUnitil(
function () {
return walletContactInfoCreator.getEle$("#AddressInfo_City").find("option").length > 1;
},//终止条件
function () {
walletContactInfoCreator.getEle$("#AddressInfo_City").val(walletContactInfoCreator.entityV.AddressInfo.City).change();
}//下一步
)
setInterval、clearInterval的回调函数,实现函数间调用的先后顺序的更多相关文章
- js函数:setInterval()/clearInterval()——js网页计时器
一.setInterval()/clearInterval()技术学习 都是window对象的方法,可以直接使用. setInterval(function(){},1000);:每1000毫秒执行一 ...
- 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数
[源码下载] 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数 作者:webabcd 介绍速战速决 之 PHP 函数基础 函数参数 函 ...
- effective c++:inline函数,文件间编译依存关系
inline函数 inline函数可以不受函数调用所带来的额外开销,编译器也会优化这些不含函数调用的代码,但是我们不能滥用Inline函数,如果程序中的每个函数都替换为inline函数那么生成的目标文 ...
- 函数内部用setTimeout()调用自身函数相当于setInterval()
本来setTimeout(function(){},time)只执行了一次function,但是当 function demo() { alert(1); setTimeout('demo()' ,5 ...
- 类间调用inline函数的效率
问题描述: class A { public: int x, y, k, NY; inline int f(int i, int j, int k) {return ((i)*(NY + 1) * ...
- c++中回调函数和函数指针的使用
#include "stdafx.h" #include <iostream> //#include <string> using namespace st ...
- Node.js学习笔记(3)——关于回调函数和函数的回调
说明:本人是node.js的初学者,尝试向别人解释这是怎么回事是自我学习的一个好方法.如果你发现有些地方并不是那么正确,欢迎提出来让我知道以便修正,共同进步,谢过^_^. 欢迎交流,本人微 ...
- C语言提高 (7) 第七天 回调函数 预处理函数DEBUG 动态链接库
链表就是一个结构体 指针指向自身结构体类型 双向链表插入的时候 先改变自身 再改变两边 双向链表删除的时候 先改变两边 再改变自己 逆序一个单向链表 回调函数 指向函数的指针 4链表的遍历回调用法 / ...
- typedef void(*Fun) (void)是什么意思 函数指针(回调函数) 和函数对象总结
https://blog.csdn.net/FreeApe/article/details/49124043 bool (*pf)(const string &,const string &a ...
随机推荐
- YOLO---多个版本的简单认识
YOLO---多个版本的简单认识 YOLOv3 有好几个经典版本了:一.YOLOv3 (Darknet)官网 @ https://github.com/pjreddie/darknet二.YOLOv3 ...
- nginx 缓存区太小导致后台Connection reset by peer 报错
问题概述:图片bit 64生成数据流太大,导致小程序分享弹窗的二维码图片生成失败 后台报错: 排查: Client------>nginx------->h5------>nginx ...
- java判断文件是否为图片
/** * 判断文件是否为图片<br> * <br> * @param pInput 文件名<br> * @param pImgeFlag 判断具体文件类型< ...
- hibernate配置和映射文件
映射文件 <?xml version="1.0" encoding="utf-8"?><!DOCTYPE hibernate-mapping ...
- 配置阿里yum源
root@docker ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/epel-7.rep ...
- 菜鸟 Python 100例
以下参考:菜鸟教程 python100例 == 推荐博客 有四个数字: 1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? import itertools a = ('1','2' ...
- P2272 [ZJOI2007]最大半连通子图 tarjan+DP
思路:$tarjan+DP$ 提交:1次 题解:首先对于一个强连通分量一定是一个半连通分量,并且形成的半连通分量的大小一定是它的$size$,所以我们先缩点. 这样,我们相当于要在新的$DAG$上找一 ...
- 我想查看数据库名,输入命令:select name from v$database;为什么会说表和视图不存在
你看一下你连接数据库的用户,需要有DBA权限才能看到这个表.
- CF915E 动态开线段树
CF915E 动态开线段树 题面 因为\(n\le10^9\),所以动态开点,线段树维护\([1,n]\)天非工作日数量. 之前的结构体写法被卡了,只能改成函数传l,r(虽然也不难) 动态开点好写,但 ...
- django使用mysql的时区问题解决
1.如果是linux 将系统的时区表导入mysql. mysql_tzinfo_to_sql /usr/share/zoneinfo 2.如果是windows 下载时区表 然后导入时区表,file_n ...