回答: Node.js は、Chrome の V8 JavaScript エンジン上に構築されたランタイム環境で、開発者がサーバー側で JavaScript コードを実行できるようにします。スケーラブルなネットワーク アプリケーションを構築するために設計されており、ノンブロッキングのイベント駆動型アーキテクチャをサポートしています。
答え: JavaScript はブラウザ内で実行されるプログラミング言語です。
Node.js は、JavaScript をサーバー側で実行できるようにするランタイム環境です。
答え: イベント駆動型プログラミングは、プログラムのフローがユーザーのアクション、センサー出力、または他のプログラムからのメッセージなどのイベントによって決定されるプログラミング パラダイムです。 Node.js では、イベント駆動型プログラミングが、イベント エミッターとリスナーを使用した非同期操作の処理の中心となります。
答え: process.nextTick() は、現在の操作が完了した後、イベント ループが継続する前に実行するコールバックをスケジュールします。
setImmediate() は、I/O イベントの後にイベント ループに配置されるコールバックをスケジュールします。
答え: Node.js は、イベント駆動型アーキテクチャーを備えたシングルスレッドのノンブロッキング I/O モデルを使用します。コールバック、Promise、および async/await を利用して非同期操作を処理し、サーバーがメイン スレッドをブロックすることなく多くのリクエストを同時に処理できるようにします。
答え: ストリームは、データをチャンクで読み書きできるようにする Node.js のオブジェクトです。これらは、大量のデータをより小さく管理しやすいチャンクに分けて処理することにより、メモリ使用量を削減するために使用されます。ストリームには 4 つのタイプがあります:
読み取り可能 (例: fs.createReadStream())
書き込み可能 (例: fs.createWriteStream())
両面印刷 (読み取り可能および書き込み可能)
変換 (出力が入力の変換である二重ストリームのタイプ)
答え: 同期コードがブロックされています。各操作が完了するのを待ってから、次の操作に進みます。
非同期コードはノンブロッキングです。これにより、操作の完了 (コールバック、Promise、または async/await によって処理される) を待たずに、プログラムが実行を継続できるようになります。
回答: Express.js のミドルウェア関数は、要求と応答のサイクル中に実行される関数です。次のミドルウェア機能に制御を渡す前に、要求、応答を変更したり、一部のロジックを実行したりできます。一般的なタイプは次のとおりです:
アプリケーションレベルのミドルウェア: Express() のインスタンスにバインドされています
ルーターレベルのミドルウェア: Express.Router()
のインスタンスにバインドされています。
エラー処理ミドルウェア
*答え: * イベント ループは、Node.js での非同期コールバックの処理を担当します。コール スタック、タスク キュー、および I/O 操作を継続的に監視します。コール スタックが空の場合、イベント キューからのタスクを処理し、負荷の高い操作を延期することでノンブロッキング I/O を確保します。
答え: クラスター モジュールを使用すると、Node.js で同じサーバー ポートを共有する子プロセス (ワーカー) を作成できます。これは、Node.js の複数のインスタンスを実行してより多くのリクエストを同時に処理することで、負荷分散とマルチコア システムの最大限の活用に役立ちます。
答え: require() は CommonJS モジュール システムの一部であり、同期的です。 ES6 より前のバージョンの Node.js でモジュールをロードするために使用されます。
import は ES6 モジュール システムの一部であり、JavaScript のネイティブ モジュール システムと連携して動作し、ツリーシェイキングと静的分析のサポートを可能にします。これは、ECMAScript モジュールを備えた新しいバージョンの Node.js で使用されます。
答え: エラー処理はいくつかの方法で行うことができます:
エラー優先パターンでのコールバックの使用 (callback(err, result))
拒否された Promise に対して .catch() を使用して Promise を使用する
async/await
での try...catch ブロックの使用
Express.js でミドルウェアを使用してエラーを処理する
回答: package.json は、プロジェクトとその依存関係に関するメタデータを含む Node.js プロジェクトのマニフェスト ファイルです。プロジェクトの名前、バージョン、メイン エントリ ポイント、スクリプト、依存関係、devDependency、およびその他の構成を定義します。
*答え: * fs.readFile() はファイル全体をメモリに読み取り、ファイルの内容を使用してコールバックを実行します。
fs.createReadStream() はファイルをチャンクに分けて読み取り、一度にすべてをロードするのではなくデータをストリーミングするため、大きなファイルのメモリ効率が高くなります。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3