为什么100在这里而不是101?
function myFunction() {
var i=100;
function f() {
return i++;
}
return f();
};
var X = myFunction();
console.log(X);
Run Code Online (Sandbox Code Playgroud)
因为在递增之前f()返回值i.++i如果希望增加后的值,请使用pre-increment().
此外,声明f()除了立即调用它之外没有其他目的,这有点奇怪.我认为你想要的是返回一个函数,该函数i在每次调用时递增并返回新值.要实现这一点,只需返回函数,然后调用console.log(X())invoke f()并记录递增的值:
function myFunction() {
var i=100;
return function() { return i++; }
};
var X = myFunction();
console.log(X());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
64 次 |
| 最近记录: |