本人 JS 新手,最近学到闭包,还没太弄明白,不懂以下两个函数的运行结果为何不同 const fn1 = () => { for (let i = 0; i console.log(i)) } } const fn2 = () => { let i = 0 while (i console.log(i)) } } 求大佬指点 const, setTimeout, log, console