高手绕道!这跟闭包本身没什么大的关系,也不知道怎么取标题,随便凑了个数,望见谅!
今天一个刚学js的朋友给了我一段代码问为什么方法不执行,代码如下:
function makefunc(x) { return function (){ return x; } } alert(makefunc(0));
function makefunc(x) { return (function (){ return x; })(); } alert(makefunc(0)());
如果要返回函数执行的结果那么首先要让这个函数执行,例如:
function makefunc(x) { return (function (){ return x; })(); } alert(makefunc(0));
(function (){ return x; })();
(function( x , y){ alert( x + y); })(2 ,3 );