0
function google(){
     var kevin = "hello";
     john(kevin);
}

function john(arg){
     var mark = arg;
    function yahoo(mark){
          alert(mark);   
    }

}

现在,当我调用我的函数时google(),它为什么不调用雅虎中的警报。

4

3 回答 3

2

你不叫yahoo。你需要这样做:

function john(arg){
     var mark = arg;
    function yahoo(mark){
          alert(mark);   
    }

    yahoo(mark); // <-------
}

你也可以重构你的代码来做这样的事情:

function john(arg){
     var mark = arg;

    (function yahoo(){
          alert(mark);   
    })();
}
于 2013-01-19T13:33:08.230 回答
1

因为里面没有yahoo函数调用john

function john(arg) {
    var mark = arg;
    function yahoo(mark) {
          alert(mark);   
    }
    yahoo(mark);  // <-- call
}
于 2013-01-19T13:32:23.023 回答
1

您正在定义函数yahoo,但从未真正调用它。试试这个:

function google(){
     var kevin = "hello";
     john(kevin);
}

function john(arg){
     var mark = arg;
     yahoo(mark);
     function yahoo(mark){
          alert(mark);   
     }    
}
于 2013-01-19T13:33:31.090 回答