ホームページ >ウェブフロントエンド >jsチュートリアル >## JavaScript コールバック関数の入力変数はどこから来るのでしょうか?
JavaScript コールバック関数: 入力変数の起源を解明する
JavaScript でコールバック関数を扱うとき、よくある疑問が生じます。コールバック関数内の変数の起源?わかりやすくするために Node.js の例を使用して、答えを詳しく見てみましょう。
次のような例では、
<code class="javascript">router.get('/', function(req, res){ res.render('index', {}); });</code>
コールバック関数は 2 つのパラメーター、req と res を受け取ります。それらの起源を理解することは非常に重要です。
他の関数呼び出しと同様に、コールバック関数のパラメーターは呼び出し時に提供されます。この場合、req と res は router.get メソッドによってコールバック関数に渡されます。
router.get の簡略版を次のように想像してください。
<code class="javascript">router.get = function(endpoint, cb){ // Logic to perform var request = {}; var response = {}; cb(request, response); // Invocation time }</code>
router.get がエンドポイントとコールバックで呼び出されると、リクエスト オブジェクトとレスポンス オブジェクトが作成され、それらがパラメータとしてコールバック関数に渡されます。これにより、コールバック内の req 変数と res 変数が効果的に設定されます。
したがって、コールバック関数はパラメータとして別の関数に渡されたときにすぐには実行されませんが、そのパラメータは呼び出し時に確立されます。他の関数と同様に、パラメーターは関数呼び出し自体から発生します。
以上が## JavaScript コールバック関数の入力変数はどこから来るのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。