3

私がこの関数を書いたとしましょう...

var sayHi = function() {
  return "hi";
}

alert(sayHi());「こんにちは」を返します。

さて、こう書くと・・・

var sayHi = function(callback) {
  callback("hi");
}

この関数で「こんにちは」を表示するにはどうすればよいですか?

ここの例に基づく: http://nowjs.com/doc

4

6 に答える 6

4

あなたはsayHiに関数を渡すので、私はこれを想像します:

sayHi(alert);
于 2011-05-29T06:01:49.833 に答える
1

コールバック関数を定義するか、匿名関数を渡す必要があります。

var sayHi = function(callback) {
  callback("hi");
}

sayHi(function(message){
  alert(message);
});
于 2011-05-29T06:01:38.167 に答える
0
sayHi(function(value) {
    alert(value);
});
于 2011-05-29T06:00:43.250 に答える
0

これを試して:

sayHi(function(msg){
    alert(msg)
});

新しいsayHi関数は値を返さないため、コールバック関数でアラートを実行する必要があります。

于 2011-05-29T06:01:20.567 に答える
0
sayHi(function(msg) {
    alert(msg);
});

コールバックを使用するときは、思考プロセスを逆にする必要があります。次の操作を最初に記述する代わりに、次の操作を最後に記述します。

于 2011-05-29T06:01:46.780 に答える
0

この例では、コールバックは関数です。したがって、関数の引数を渡す必要があります。

これは 2 つの方法で行うことができます。

var some_fun = function(some_str) {
    alert(some_str);
}

var sayHi = function(callback) {
  callback("hi");
}

    sayHi(some_fun)

または、呼び出すときに関数を渡すことができます。

var sayHi = function(callback) {
  callback("hi");
}

sayHi(function(some_str){
  alert(some_str);
});
于 2011-05-29T06:05:41.967 に答える