この記事では、Node.js のコールバック関数について興味深い紹介をし、例を通してコールバック関数について簡単に理解できるようにします。皆様のお役に立てれば幸いです。
Node.js 非同期プログラミングの直接の現れはコールバック関数です. コールバック関数はタスクの完了後に呼び出されますが、Node.js では多くのコールバック関数が使用されているため、コールバック関数について語るには Node.js を使用するのが適切だと思います。さて、コールバック関数について頑張って話しましょう~ [推奨学習: "nodejs チュートリアル"]
コールバック関数とは
オンライン フォーラムにアクセスしてリソース シードを探しましたが、探しているリソースが見つからなかったため、フォーラムに投稿して、リソースを求めるメール アドレスを残しました。数日後、ネットユーザーがリソースを見つけたので、あなたに電子メールを送信し、あなたはリソース シードを受け取り、リソースをダウンロードします。ここでは、フォーラムに電子メール アドレスを残すときにコールバック関数を登録します。残した電子メール アドレスはコールバック関数です。誰かがリソースを見つけて電子メールを送信すると、コールバック関数がトリガーされ、コールバック関数が呼び出されます。シードを取得してダウンロードすると、response. コールバック イベントになります。
例:
function main(info,callback){ console.log("点赞、评论、转发了没?!") callback(info) } function say(msg){ console.log(msg) } main("给了,给了!",say)
ここでの callback はコールバック関数です。もちろん、この名前を使用する必要はありません。関数本体では、最初にメッセージが出力され、その後、msg をパラメータとして使用するコールバック関数が呼び出されます。
コールバック関数の例
Node.js プログラムを使用してファイルを読み取るには 2 つの方法があります。 1 つは同期操作で、読み取り操作が完了した後にのみ後続のコマンドを実行できます。この方法はブロッキングと呼ばれます。もう 1 つの方法は非同期であり、他のコマンドを実行しながらファイルを読み取ることができます。この方法はノンブロッキングとも呼ばれます。
ノンブロッキング メソッドはコールバック関数に基づいており、操作の並列実行が可能です。イベント発生時に操作結果がコールバック関数で処理されるため、プログラムは操作結果を待たずに次のステップを実行できるため、Node.js のパフォーマンスが大幅に向上し、大量の処理を処理できるようになります。同時リクエスト。
例:
const fs = require("fs") fs.readFile('./foo.txt',function(err,data){ if(err) return console.error(err) console.log(data.toString()) }) console.log("Node.js 程序已经执行结束~")
実行結果:
Node.js 程序已经执行结束~ 小的们,快给我点赞~
ファイルを読み込む場合、ファイルを読み込むかどうかに関係なく、以下の出力文が実行されることがわかります。したがって、最初にプログラムが終了したことを示す文字が表示され、ファイルの読み込みを待ってからファイルの内容が表示されます。ファイルの内容はコールバック関数のパラメーター データとして返されるため、コードを実行する前にファイル I/O 操作が完了するのを待つ必要はありません。
プログラミング関連の知識について詳しくは、プログラミング ビデオをご覧ください。 !
以上がNode.js のコールバック関数の興味深い説明 (例付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。