JavaScript函数嵌套函数怎么调用

function run(){
function a(){
return '我不爱你';
}
function b(){
return '我爱你';
}
function c(){
return '我只喜欢你';
}
}
怎么单独调用里面的A B C???

题主是说在 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'));

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-10-07
阔以给run() 传个参数然后内部判断参数,决定返回值追问

举个例子,有点不太懂