0

後で呼び出すことができるように関数に変数を割り当てたいのですが、このフィドルでは、ボタン「invoke」を押すたびに関数が呼び出されます。

関数をvarialbe'fun'に割り当てて、アラートを呼び出さないようにする必要がありますか?

フィドル: http: //jsfiddle.net/vkvUR/

コード:

$("#button").click(myFun);

    <input name="Button3" type="button" value="Invoke" id="button">

    function myFun(myarg){   
        var fun = alert(myarg); 

    }  

    function myFunParam(myFun){    
        if (typeof myFun === "function")       
            myFun('foo'); // alerts "foo" 
    } 
4

3 に答える 3

2

呼び出しを含めるために無名関数を割り当てる必要がありfunますalert


変化する:

var fun = alert(myarg); 

に:

var fun = function(){
   alert(myarg); 
}

http://jsfiddle.net/Curt/vkvUR/1/

そしてここに呼び出しているバージョンがありfun()ます:

http://jsfiddle.net/Curt/vkvUR/2/

于 2012-06-19T10:45:29.677 に答える
0

後で変数を使用する場合はに変更var fun = alert(myarg);var fun = function(){alert(myarg)};ますfun

于 2012-06-19T10:48:12.793 に答える
0

alert(myFun)alertメソッドを呼び出し、ポップアップを表示します。おそらくあなたはこのようなことを意味しました。関数名の後に括弧内の関数にパラメーターを渡すと、関数が呼び出されます。関数を呼び出さずに参照するには、パラメーターを省略します。

​var foo = alert;
foo("bar")​​​​​​​​​​​; //alerts "bar"
于 2012-06-19T10:54:18.813 に答える