码迷,mamicode.com
首页 > 其他好文 > 详细

ATG精准科技-前端面试题

时间:2018-10-19 16:00:27      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:nbsp   前端面试   OLE   bsp   打印   col   ons   外部   执行   

1.请写出以下结果

for(var i=0; i<10; i++){
    setTimeout(function () {
        console.log(i)
    },10)
}

结果:打印10次190
解析:
考察的是作用域和异步的知识点,这是js特有的知识点,其它程序语言没有
a:遇到异步代码,程序不等待,而将代码继续执行下去,即for循环先执行完,然后再过来执行setTime里的回调,此时i已被累加到10
b:由于js语言没有块级作用域,故而定时器内的的i就是外部的i的值,所以定时器内部打印的那个i,早就是10了  

 

ATG精准科技-前端面试题

标签:nbsp   前端面试   OLE   bsp   打印   col   ons   外部   执行   

原文地址:https://www.cnblogs.com/dshvv/p/9816559.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!