答え: 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())
二重 (読み取り可能および書き込み可能)
Transform (出力が入力の変換である二重ストリームのタイプ)
答え: 同期コードがブロックされています。各操作が完了するのを待ってから、次の操作に進みます。
非同期コードはノンブロッキングです。これにより、プログラムは操作の完了 (コールバック、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 でミドルウェアを使用してエラーを処理する
Jawapan: package.json ialah fail manifes dalam projek Node.js yang mengandungi metadata tentang projek dan kebergantungannya. Ia mentakrifkan nama projek, versi, titik masuk utama, skrip, kebergantungan, devDependencies dan konfigurasi lain.
*Jawapan: * fs.readFile() membaca keseluruhan fail ke dalam memori dan kemudian melaksanakan panggilan balik dengan kandungan fail.
fs.createReadStream() membaca fail dalam ketulan, menjadikannya lebih cekap memori untuk fail besar kerana ia menstrim data dan bukannya memuatkannya sekaligus.
以上がNODE の面接の質問...の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。