Js中闭包等问题(转载) 发表于 2017-04-06 第一道闭包问题题目代码及答案123456789101112function 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的输出分别是什么?` 答案:123//a: undefined,0,0,0//b: undefined,0,1,2//c: undefined,0,1,1 详细解答地址作者:小小沧海 第二道Js函数问题题目代码及答案1234567891011121314151617function Foo() { getName = function () { alert (1); }; return this;}Foo.getName = function () { alert (2);};Foo.prototype.getName = function () { alert (3);};var getName = function () { alert (4);};function getName() { alert (5);}//请写出以下输出结果:Foo.getName();// 2getName();// 4Foo().getName();// 1getName();// 1new Foo.getName();// 2new Foo().getName();// 3new new Foo().getName();// 3 详细解答地址作者:小小沧海