- 为什么如下代码会打印 6 个 6
let i = 0
for(i = 0; i<6; i++){
setTimeout(()=>{
console.log(i)
},0)
}
使用 setTimeout的意思就是说尽快执行 ,尽快执行就是在手头的事情做完之后。那么这里就是在 for 循环之后打印出 i,所以也就是 6 个 6。
- 让上面代码打印 0、1、2、3、4、5 的方法
只需要把变量的声明写在循环里就可以打印出0、1、2、3、4、5
for(let i = 0; i<6; i++){
setTimeout(()=>{
console.log(i)
},0)
}
- 除了使用 for let 配合,还可以什么使用可以打印出 0、1、2、3、4、5
console.log放在函数中调用打印出
for( i = 0; i<6; i++){
setTimeout(name(i),0)
}
function name (i){
console.log(i)
}