Node.js では、特定のディレクトリ内のファイル名のリストにアクセスするのが一般的なタスクです。 「fs」モジュールを利用することで、開発者はこれを簡単に実現できます。
指定されたディレクトリ内のファイル名の配列を取得するには、「fs.readdir」または「fs.readdir」を使用します。 「readdirSync」メソッドを使用できます。 「fs」は Node.js コアですぐに使用できるため、外部インストールの必要がなくなります。
const testFolder = './tests/'; const fs = require('fs'); fs.readdir(testFolder, (err, files) => { files.forEach(file => { console.log(file); }); });
このアプローチには非同期操作が含まれます。読み取りプロセスの完了を処理するコールバック関数が指定されているため、読み取り操作の実行中にコードの実行を継続できます。
const testFolder = './tests/'; const fs = require('fs'); fs.readdirSync(testFolder).forEach(file => { console.log(file); });
対照的に、「fs.readdirSync」は同期操作を実行し、ファイル名の配列をすぐに返します。ただし、読み取りプロセスが完了するまで、それ以降のコードの実行は停止されます。この機能は、ファイル リストへの即時アクセスが必要なシナリオに役立ちます。
2 つの方法の主な違いは、同期と非同期の性質にあります。非同期操作ではノンブロッキングの実行が可能ですが、同期操作では完了するまでコードの実行が一時停止されます。これらの方法のどちらを選択するかは、アプリケーションの特定の要件によって異なります。
一般に、パフォーマンス上の理由から、特にファイル読み取りなどの I/O バウンドのタスクを処理する場合は、非同期操作が推奨されます。これらにより、不必要な遅延なく実行を継続できます。
以上が`fs.readdir` と `fs.readdirSync` を使用して Node.js でディレクトリ リストを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。