JS|JS 函数的执行时机

1 解释为什么如下代码会打印 6 个 6

let i = 0 for(i = 0; i<6; i++){ setTimeout(()=>{ console.log(i) },0) }

-函数一共会执行6次循环,每次循环到i = 6的时候就打印出值
-在有setTimeout()语句的情况下,需要把循环执行完后,再打印出i
2 写出让上面代码打印 0、1、2、3、4、5 的方法
把let i = 0合并到for循环中:
for(let i = 0; i<6; i++){ setTimeout(()=>{ console.log(i) },0) } // => 0, 1, 2, 3, 4, 5

3 除了使用 for let 配合,还有什么其他方法可以打印出 0、1、2、3、4、5
【JS|JS 函数的执行时机】用for...in...语句遍历数组
let arr1 = [0,1,2,3,4,5] for(i in arr1){ console.log(i) }

    推荐阅读