1. let a = 1
    2. function fn(){
    3. console.log(a)
    4. }//调用fn()返回值为1
    5. let i = 0
    6. for( i = 0;i<6;i++){
    7. setTimeout(()=>{
    8. console.log(i)
    9. },0)
    10. }
    11. //结果是6个6。因为当i=6时,不满足循环条件使得循环结束,所以一共有六次循环。
    12. //setTimeout是定时器,虽然时间等于0,但是也要在所有代码执行完了在执行setTimeout。
    13. //因为所有循环执行完后i=6,setTimeout调用i的值,所以使得这六次循环返回值都为6。
    14. for(let i = 0;i<6;i++){
    15. setTimeout(()=>{
    16. console.log(i)
    17. },0)
    18. }//当将for中的循环变量,声明为let时,该循环变量将不再执行setTimeout,而是返回正常循环值。
    19. //其余方法打印0,1,2,3,4,5
    20. let i = -1
    21. while (i<5){
    22. i++
    23. console.log(i)
    24. }
    25. //其余方法打印0,1,2,3,4,5
    26. let i = [0,1,2,3,4,5]
    27. i.forEach((item)=>console.log(item))