ホームページ >ウェブフロントエンド >jsチュートリアル >コールバック関数
コールバック関数について学ぶと、Sharpay のように感じられますか?
そうですね、技術的な話に入る前に、より理論的な方法で、ケーキを使って考えてみましょう。 ?
友達の誕生日にケーキを焼きたいと想像してみてください。誕生日の前日に、レシピに従ってアイシングを作り、冷蔵庫に入れて一晩寝かせます。 ここで、アイシングのレシピはコールバック関数です。まだアイシングを使用していませんが、後で使用するのを待っています!
誕生日パーティーの日、あなたはケーキのレシピを作成することにしました。小麦粉、水、卵、砂糖、ベーキングパウダー、塩、牛乳、、アイシングが必要です。
このレシピまたは関数は、アイシングに多数の変数とそのレシピまたは関数を使用しています。これは、以前に作成または宣言したレシピを呼び戻します。
ケーキの話はこれくらいにして (残念ながら)、技術的な話に入りましょう:
この時点では、変数を関数の引数として渡すことに慣れています。 JavaScript では、関数を使用して新しい関数に引数として渡すこともできます。 最初の関数はコールバック関数であり、それが新しい関数を通じて引数として渡される関数です。
例:
//コールバック関数
関数アイシング ( ) {
console.log("バニラアイシング")
}
//新しい関数
関数ケーキ (フレーバー、コールバック) {
console.log("私のケーキのフレーバーは " フレーバーです);
コールバック();
}
//コールバック関数を引数として使用する
ケーキ (「かぼちゃ」、アイシング);
結果はどうなると思いますか?
コードの下部で、cake 関数を呼び出していることがわかります。最初の引数として「パンプキン」を渡しているため、コンソールが「私のケーキの味はパンプキンです」と記録することがわかります
この関数の 2 番目の部分では、2 番目のパラメーターを使用してその関数を呼び出します。 Cake を呼び出しているとき、呼び出している 2 番目のパラメーターが icing 関数であることがわかります。アイシング機能では、console.log に「バニラ アイシング」を記録する必要があります。
したがって、コンソールには次のように表示されるはずです。
私のケーキの味はかぼちゃです
バニラアイシング
コールバック関数のレシピもありますので、お楽しみください!
追加チャレンジ:
ケーキにデコレーションを追加するコールバック関数を受け取る、decorate という関数を書いてみてください!
その他の素材:
https://www.programiz.com/javascript/callback
https://developer.mozilla.org/en-US/docs/Glossary/Callback_function
以上がコールバック関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。