闭包那点事
var obj = { a:1, b:2, fun:function(){ // a没有在fun函数的作用域之内或者之外声明定义(var..) // a只是obj的一个属性名 console.log(a) //underfined } } obj.fun() function fun(n,o){ console.log(o) return{ fun:function(m){ return fun(m,n) } } } var a = fun(0); console.log(a) 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);