第一个小栗子
function returnName(){ var name = "hello"; return function(){ console.info(name); }}
returnName()();//hello
function returnName(value){ var name = "hello "+value; return function(){ console.info(name); }}
returnName('meimei')();//hello meimei
第二个小栗子
function fun(n,o){ console.info(o); return{ fun:function(m){ return fun(m,n); } }}var a=fun(0);a.fun(1);a.fun(2);a.fun(3); // undefined 0 0 0var a=fun(0);a.fun(1).fun(2).fun(3); // undefined 0 1 2var a=fun(0).fun(1);a.fun(2);a.fun(3); // undefined 0 1 1
详细分析请看http://www.cnblogs.com/xxcanghai/p/4991870.html#3436245