function foo() { var i = 0; function fn() { console.log(i++); } return fn; } var f1 = foo(); f2 = foo(); f1(); f1(); f2(); //为什么执行f2()的结果不是2而是0呢? f2\f1不是指向同一个对象的么