varfun=function (){
return function (input,findname){
var out="";
return out;
};
});
各位这是什么意思啊!!晕了
为何不写成
var fun=function (input,findname){
var out="";
return out;
};
第一个,定义了一个函数,参数为空,返回值是一个函数。这个函数(返回值)接受2个参数,并返回字符串。
第二个,定义了一个函数,2个参数,返回值是一个字符串。
第一个:
var f = fun();
f(1, 2);
如果没特殊情况 ,像你下面那种写法也是可以的;
但是在有些时候 我们不想暴露一些特殊的数据,情况就不一样了
varfun=function (){
var special='我是特殊的数据';//你想用到 special 但是又不想暴露special 数据到外层
//就需要用到 匿名函数 ,这也是匿名函数存在的理由之一
return function (input,findname){
var out=special;
return out;
};
});
//答案被踩 真心不知道为啥