ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript でコールバック関数にパラメータを渡すにはどうすればよいですか?

JavaScript でコールバック関数にパラメータを渡すにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-03 08:37:03879ブラウズ

How do I pass parameters to a callback function in JavaScript?

JavaScript でコールバック関数にパラメータを渡す

JavaScript では、コールバック関数は、別の関数に引数として渡される関数です。他の関数がコールバックを呼び出すと、コールバックは渡されたパラメータにアクセスできます。

説明のために、2 つのパラメータを受け取り、その値を通知する tryMe という関数を作成しましょう。

function tryMe(param1, param2) {
  alert(param1 + " and " + param2);
}

次に、引数としてコールバック関数と 2 つの追加パラメーターを取る callbackTester という関数を定義しましょう:

function callbackTester(callback, param1, param2) {
  callback(param1, param2);
}

コールバックにパラメーターを渡すには、必要なパラメーターを指定して callbackTester を呼び出すだけです:

callbackTester(tryMe, "hello", "goodbye");

これは、パラメータ「hello」と「goodbye」を指定して tryMe 関数を呼び出し、その値を警告します。

引数 Variable を使用します

Ifパラメータをコールバックに渡す際にさらに柔軟性が必要な場合は、arguments 変数を使用できます。この変数には、関数に渡されるすべての引数の配列が含まれます。これには、明示的なパラメータと、関数の呼び出し時に渡される追加の引数も含まれます。

function tryMe(param1, param2) {
  alert(param1 + " and " + param2);
}

function callbackTester(callback) {
  callback(arguments[1], arguments[2]);
}

callbackTester(tryMe, "hello", "goodbye");

この例では、単一の引数を指定して callbackTester を呼び出します。 tryMe関数です。ただし、arguments 変数には callbackTester に渡される 3 つのパラメーターがすべて含まれているため、必要なパラメーターを抽出できます。

  • arguments[1] は callbackTester に渡される 2 番目のパラメーター (「hello」) を指します。
  • arguments[2] は、callbackTester に渡される 3 番目のパラメーター (「goodbye」) を指します。

arguments 変数を使用することで、適切なパラメーターを動的に取得して渡すことができます。呼び出し元の関数に渡されるパラメーターの数や種類に関係なく、コールバックが返されます。

以上がJavaScript でコールバック関数にパラメータを渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。