function foo(x) { var tmp = 3; return function (y) { alert(x + y + (++tmp)); } }var bar = foo(2); bar(10);
为什么上面这段代码每次调用bar时它都会自加1.但是下面这段代码每次执行又永远不会变化,恒为16
function foo(x) { var tmp = 3; function bar(y) { alert(x + y + (++tmp)); } bar(10); } foo(2)
繁星淼淼
相关分类