JS 函数的执行时机
1. 解释为什么如下代码会打印 6 个 6
let i = 0 for(i = 0; i<6; i++){ setTimeout(()=>{ console.log(i) },0) }
答:setTimeout的意思就是等一会再执行,先把上面的语句执行完了再执行console.log,也就是把for循环全部执行完,那么for循环执行完后就是6,之后就再打印6个6
2.写出让上面代码打印 0、1、2、3、4、5 的方法
1 for (let i = 0;i<6;i++){ 2 setTimeout(()=>{ 3 console.log(i) 4 },0) 5 }
3 除了使用 for let 配合,还有什么其他方法可以打印出 0、1、2、3、4、5
1 for(let i = 0; i<6; i++){ 2 fn(i); 3 } 4 function fn(i){ 5 setTimeout(()=>{ 6 console.log(i) 7 },0) 8 }

浙公网安备 33010602011771号