【Node.js24.x】Object::existsSync()メソッドの使い方
existsSyncメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
existsSyncメソッドは、指定されたパスにファイルやディレクトリが存在するかどうかを同期的に確認するメソッドです。このメソッドは、Node.jsのファイルシステムモジュール、通称fsモジュールの一部として提供されています。
引数としてファイルまたはディレクトリのパス文字列を受け取り、そのパスが存在すればtrueを、存在しなければfalseを即座に返します。非常にシンプルで使いやすい反面、注意すべき点があります。
existsSyncは「同期」メソッドであるため、ファイルシステムへの問い合わせが完了するまで、プログラムの実行が一時的に停止します。つまり、ファイルやディレクトリの確認処理が終わるまで、次に書かれているコードは一切実行されません。これにより、特に大規模なアプリケーションやWebサーバーなど、高い応答性が求められる環境では、アプリケーション全体のパフォーマンスに影響を与えたり、ユーザーインターフェースがフリーズしたように見えたりする可能性があります。
そのため、一般的には、プログラムの実行をブロックしない「非同期」メソッドであるfs.access()の利用が推奨されています。しかし、スクリプトの起動時や、ファイルが存在しないとプログラムを続行できないような、同期処理が許容される特定の状況では、existsSyncは簡潔なコードで目的を達成できるため便利に活用できます。システム開発においては、それぞれのメソッドの特性を理解し、適切な場面で使い分けることが重要です。
構文(syntax)
1const fs = require('fs'); 2const exists = fs.existsSync('./path/to/file_or_directory');
引数(parameters)
path
- path: string: 存在を確認したいファイルまたはディレクトリのパスを指定する文字列
戻り値(return)
boolean
指定されたパスにファイルまたはディレクトリが存在するかどうかを判定し、存在すればtrue、存在しなければfalseを返します。