嗨,想问一下为什么这段代码返回一个函数而不是 x 值。提前致谢。
function f() {
function makeClosure(x) {
return function(){
return x;
};
}
var a = [];
var i;
for(i = 0; i < 3; i++) {
a[i] = makeClosure(i);
}
return a;
}
var a = f();
console.log(a[0]);