不应该是每次返回的闭包都是n=0吗,++也应该在n=0基础上,输出应该是111啊
当有n++时候,返回值是123
function fun(n, b) {console.log(b) //und123
return {
fn1: function (m) {
n++;
return fun(m, n);
}
};
}
var a = fun(0)
a.fn1(1);
a.fn1(2);
a.fn1(3);
function fun(n, b) {
console.log(b) //und000
return {
fn1: function (m) {
//n++;
return fun(m, n);
}
};
}
var a = fun(0)
a.fn1(1);
a.fn1(2);
a.fn1(3);
回答
a.fn1
方法每次调用时都会修改a.fn1
的作用域对象属性n
的值。Chrome debugger看看:
以上是 不应该是每次返回的闭包都是n=0吗,++也应该在n=0基础上,输出应该是111啊 的全部内容, 来源链接: utcz.com/a/65151.html