关于javascript中return function()的问题?
高洛峰
高洛峰 2017-04-10 15:56:33
[JavaScript讨论组]
varfun=function (){
    return function (input,findname){
       var out="";
        return out;
    };
});

各位这是什么意思啊!!晕了

为何不写成

var fun=function (input,findname){
var out="";
return out;
};
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(2)
PHP中文网

如果没特殊情况 ,像你下面那种写法也是可以的;

但是在有些时候 我们不想暴露一些特殊的数据,情况就不一样了

varfun=function (){
    var special='我是特殊的数据';//你想用到 special 但是又不想暴露special 数据到外层 
    //就需要用到 匿名函数 ,这也是匿名函数存在的理由之一
    return function (input,findname){
       var out=special;
        return out;
    };
});

//答案被踩 真心不知道为啥

大家讲道理

第一个,定义了一个函数,参数为空,返回值是一个函数。这个函数(返回值)接受2个参数,并返回字符串。

第二个,定义了一个函数,2个参数,返回值是一个字符串。

第一个:

var f = fun();
f(1, 2);
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号