jirengu / frontend-interview

前端笔试面试题题库
1.29k stars 139 forks source link

循环/闭包/setTimeout/Promise 综合 #30

Open Panda-HJN opened 7 years ago

Panda-HJN commented 7 years ago
  1. 控制台显示内容为?
    for (var i = 0; i < 5; i++) {
    console.log(i);
    }
  2. 控制台显示内容为?
    for (var i = 0; i < 5; i++) {
    setTimeout(function() {
    console.log(i);
    }, 1000 * i);
    }
  3. 控制台显示内容为?
    for (var i = 0; i < 5; i++) {
    (function(i) {
    setTimeout(function() {
      console.log(i);
    }, i * 1000);
    })(i);
    }
  4. 控制台显示内容为?
    for (var i = 0; i < 5; i++) {
    (function() {
    setTimeout(function() {
      console.log(i);
    }, i * 1000);
    })(i);
    }
  5. 控制台显示内容为?
    for (var i = 0; i < 5; i++) {
    setTimeout((function(i) {
    console.log(i);
    })(i), i * 1000);
    }
  6. 控制台显示内容为?
    setTimeout(function() {
    console.log(1)
    }, 0);
    new Promise(function executor(resolve) {
    console.log(2);
    for( var i=0 ; i<10000 ; i++ ) {
    i == 9999 && resolve();
    }
    console.log(3);
    }).then(function() {
    console.log(4);
    });
    console.log(5);

    知乎上看到的文章,六道题循序渐进的考察了很多东西.

做完了感觉有用就去原作者处点个赞吧. 作者:Liril

shineSnow commented 7 years ago

这几题主要考察了闭包还有js异步的知识,贴一下关于闭包的,https://www.zhihu.com/question/33468703