js初级相关笔试题
1 以下代码执行的结果for(var i=0;i<3;++i){setTimeout(function(){ console.log(i);},100);}解答:这道题涉及了异步、作用域、闭包settimeout是异步执行,100ms后往任务队列里面添加一个任务,只有主线上的全部执行完,才会执行任务队列里的任务,当主线执行完成后,i是3,所以此时再去执行任务队列里的任务时,i全部是3了。对于打印3次是:每一次for循环的时候,settimeout都执行一次,但是里面的函数没有被执行,
原创
2020-12-10 11:02:37 ·
874 阅读 ·
1 评论