转载大部分人都会做错的经典JS闭包面试题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了转载大部分人都会做错的经典JS闭包面试题相关的知识,希望对你有一定的参考价值。

原文链接http://www.cnblogs.com/xxcanghai/p/4991870.html

function fun(n,o) {
  console.log(o)
  return {
    fun:function(m){
      return fun(m,n);
    }
  };
}
var a = fun(0);  a.fun(1);  a.fun(2);  a.fun(3);//undefined,?,?,?
var b = fun(0).fun(1).fun(2).fun(3);//undefined,?,?,?
var c = fun(0).fun(1);  c.fun(2);  c.fun(3);//undefined,?,?,?
//问:三行a,b,c的输出分别是什么?

  

答案

//a: undefined,0,0,0
//b: undefined,0,1,2
//c: undefined,0,1,1

  

以上是关于转载大部分人都会做错的经典JS闭包面试题的主要内容,如果未能解决你的问题,请参考以下文章

这道js面试题号称99%的人会做错

90% 的人都会答错的面试题 == 和 equals 的区别

前端面试题的做错的题(刷题才更新)

JS进阶面试题整理(仅仅整理我做错的题)

解析js中作用域闭包——从一道经典的面试题开始

这道面试必问的JVM面试题70%的Java程序员会做错