0

関数を書く必要があります:

function doTestConnCall(param1, param2, callbackfun)

param1とparam2は、関数内で使用したパラメーターです。3番目のパラメータ-callbackfun終了後に呼び出される関数ですdoTestConnCall

  1. これを達成する方法は?
  2. 1つのメソッド内で2つのコールバックを渡すことは可能ですか?言うdoTestConnCall(param1,callback1,callback2)

私はいくつかの基本が欠けていると思います。誰かが私を導くことができますか

4

4 に答える 4

1

次のようなことができます。

callbackfun(argument1, argument2);

また:

callbackfun.apply(this, [ argument1, argument2 ]);

また:

callbackfun.call(this, argument1, argument2);

複数のコールバックでも同じことができます。例えば:

callback1.call(this);
callback2.call(this);

参照: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Function/apply

そして: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Function/call

于 2012-11-25T07:21:42.393 に答える
0
  1. あなたが書いている関数で適切なときはいつでも、コールバックを呼び出してください。

  2. はい、もちろん。それらを次々と呼び出します。

    function multipleCallbacks(arg, arg, callback1, callback2) {
        // Do some stuff
    
        // Do error checking in the real world if you need to be tolerant
        callback1();
        callback2();   
    }
    
于 2012-11-25T07:22:24.967 に答える
0

JS の関数はトップレベルの構造です。つまり とfunction hello() {}同じvar hello = function() {};です。したがって、上記の関数に渡したい場合は、上記のいずれかのメソッドを使用して定義した後にhello呼び出すことができます。doTestConnCall(param1, param2, hello)hello()

于 2012-11-25T07:23:19.543 に答える
0

これがあなたがそれを達成する方法です。

メソッドのパラメーターとして、必要なものを何でも渡すことができます。

function doTestConnCall(param1, param2, callbackfun){
   DO YOUR LOGIC
   callbackfun() // CALL YOUR CALLBACK
}
于 2012-11-25T07:23:21.243 に答える