一般基础写法:
setTimeout(func|code, delay) // 第一个参数是函数执行体,后面一个是延时时间
但是setTimeOut还可以在后面增加多个参数,比如:
setTimeout(func|code, delay,a,b,c ..) // 第一个参数是执行体,第二个参数是延时时间,后面的参数可以作为参数传入第一个函数执行体内作为参数使用
setTimeOut的参数:
第一个参数是执行体,
第二个参数是延时时间,
后面的参数可以作为参数传入第一个函数执行体内作为参数使用。
比如:
for (var b = 0; b < 4; b++) {
setTimeout(function(c) {
console.log( c);
}, 1000, b);
}
console.log(c);
打印出来
4,0,1,2,3
这是因为整个for循环是几乎是一瞬间执行完毕,相当于同一时间设置了四个定时器,每个定时器都是延时1s以后执行,并且每一个定时器都保存了创建它的时候b的值,所以,最后是先打印出4,然后过一秒几乎同时打印出0,1,2,3.