延迟函数setTimeout
setTimeout(延迟执行的函数,延迟多少毫秒,传入延迟函数的参数);
//传入参数可选,如果有多个参数按顺序传入
function fn(){
console.log("延迟一秒出现");
}
setTimeout(fn,1000);//注意是fn,不是fn()。如果是fn()会立即执行
//有参数传入时建议采用下述方式
setTimeout(function(){
fn(参数);
},5000)
间隔函数setInterval
setInterval(间隔执行的函数,间隔多少毫秒);
function fn(){
document.write("间隔一秒出现");
}
setInterval(fn,1000);
取消间隔
clearInterval(间隔函数ID);
function fn(){
document.write("间隔一秒出现");
}
var intervalID = setInterval(fn,1000);
setTimeout(function(){
clearInterval(intervalID);
},5000)
//输出了五次“间隔一秒出现”
补充
下列代码谁先输出呢:
setTimeout(function(){
console.log("1");//后输出
},0)
console.log("2");//先输出
运行后2在1前被打印出来
所以可以得出在全部运行后的空余时间才会执行setTimeout(当然setInterval同样如此,但不太可能有人设置间隔为0毫秒)