javascript学习笔记(十五) js间歇调用和超时调用
作者:
javascript学习笔记之js间歇调用和超时调用介绍,学习js的朋友可以参考下
1.超时调用setTimeout()
setTimeout() 方法接受两个参数,第一个参数是函数,第二个参数是时间(单位微秒),返回数值ID
setTimeout( function () {
alert("你好!");
},1000);
调用前取消clearTimeout(),接受一个参数超时调用ID
var timeOutId = setTimeout( function () {
alert("你好!");
},1000);
clearTimeout(timeOutId);
2.间歇调用setInterval()
setInterval()方法接受两个参数,第一个参数是函数,第二个参数是时间(单位微秒),返回数值ID
setInterval( function () {
alert("你好!");
},1000);
取消调用clearInterval(),接受一个参数间歇调用ID
var intervalId = null;
var span = document.createElement("span"); //创建span节点
span.Id="time"; //设置span的id
document.body.appendChild(span); //body内添加span
function incrementNumber () {
var now = new Date();
var timeStr = now.toLocaleTimeString();
span.innerText =timeStr;
num++;
if (num == 10) {
clearInterval(intervalId); //十秒后时间不变了
}
}
intervalId = setInterval(incrementNumber,1000);
3.尽量用超时调用替代间歇调用
var num = 0;
var max = 10;
function incrementNumber() {
num++;
if (num<max) {
setTimeout(incrementNumber,1000);
} else {
alert("OK");
}
}
setTimeout(incrementNumber,1000);
setTimeout() 方法接受两个参数,第一个参数是函数,第二个参数是时间(单位微秒),返回数值ID
复制代码 代码如下:
setTimeout( function () {
alert("你好!");
},1000);
调用前取消clearTimeout(),接受一个参数超时调用ID
复制代码 代码如下:
var timeOutId = setTimeout( function () {
alert("你好!");
},1000);
clearTimeout(timeOutId);
2.间歇调用setInterval()
setInterval()方法接受两个参数,第一个参数是函数,第二个参数是时间(单位微秒),返回数值ID
复制代码 代码如下:
setInterval( function () {
alert("你好!");
},1000);
取消调用clearInterval(),接受一个参数间歇调用ID
复制代码 代码如下:
var intervalId = null;
var span = document.createElement("span"); //创建span节点
span.Id="time"; //设置span的id
document.body.appendChild(span); //body内添加span
function incrementNumber () {
var now = new Date();
var timeStr = now.toLocaleTimeString();
span.innerText =timeStr;
num++;
if (num == 10) {
clearInterval(intervalId); //十秒后时间不变了
}
}
intervalId = setInterval(incrementNumber,1000);
3.尽量用超时调用替代间歇调用
复制代码 代码如下:
var num = 0;
var max = 10;
function incrementNumber() {
num++;
if (num<max) {
setTimeout(incrementNumber,1000);
} else {
alert("OK");
}
}
setTimeout(incrementNumber,1000);