本文章深入解析了JS前端开发中常见的闭包相关面试问题,帮助读者理解闭包的概念、作用及其在实际开发中的应用技巧。
问题代码Afunction 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);
var b = fun(0).fun(1).fun(2).fun(3);
var c = fun(0).fun(1);
c.fun(2);
c.fun(3);
这是一个闭包测试题,程序输出的结果是通过返回的对象的`fun`属性对应一个新建的函数对象实现的。