`fs.readdir` と `fs.readdirSync` を使用して Node.js でディレクトリ リストを取得する方法

Linda Hamilton
リリース: 2024-11-24 10:28:15
オリジナル
739 人が閲覧しました

How to Retrieve a Directory Listing in Node.js Using `fs.readdir` and `fs.readdirSync`?

Node.js でのディレクトリ リストの取得

Node.js では、特定のディレクトリ内のファイル名のリストにアクセスするのが一般的なタスクです。 「fs」モジュールを利用することで、開発者はこれを簡単に実現できます。

解決策

指定されたディレクトリ内のファイル名の配列を取得するには、「fs.readdir」または「fs.readdir」を使用します。 「readdirSync」メソッドを使用できます。 「fs」は Node.js コアですぐに使用できるため、外部インストールの必要がなくなります。

fs.readdir (非同期メソッド)

const testFolder = './tests/';
const fs = require('fs');

fs.readdir(testFolder, (err, files) => {
  files.forEach(file => {
    console.log(file);
  });
});
ログイン後にコピー

このアプローチには非同期操作が含まれます。読み取りプロセスの完了を処理するコールバック関数が指定されているため、読み取り操作の実行中にコードの実行を継続できます。

fs.readdirSync (同期メソッド)

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート