JavaScript函数嵌套函数怎么调用

functionrun(){functiona(){return'我不爱你';}functionb(){return'我爱你';}functionc(){return'我... function run(){
function a(){
return '我不爱你';
}
function b(){
return '我爱你';
}
function c(){
return '我只喜欢你';
}
}
怎么单独调用里面的A B C???
展开
 我来答
然后去远足
2015-10-08 · TA获得超过1万个赞
知道大有可为答主
回答量:4016
采纳率:83%
帮助的人:2432万
展开全部

题主是说在 run 外部调用 a、b、c?


那是不可能的,使用嵌套函数的目的就是为了让外部无法调用,以达到封装性的目的。


可以使用折衷的办法:

function run(obj){
    function a(){
        return '我不爱你';
    }
    function b(){
        return '我爱你';
    }
    function c(){
        return '我只喜欢你';
    }
    
    switch(obj){
        case 'a':
            return a();
            break;
        case 'b':
            return b();
            break;
        case 'c':
            return c();
            break; 
    }
    return null;
}

使用时:

alert(run('a'));
alert(run('b'));
alert(run('c'));
coolbi5
2015-10-07 · TA获得超过1万个赞
知道大有可为答主
回答量:1.1万
采纳率:35%
帮助的人:2444万
展开全部
阔以给run() 传个参数然后内部判断参数,决定返回值
追问
举个例子,有点不太懂
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式