Node.js 面试题
目录

如何使用 fs 模块检查文件或目录是否存在?

· 约 2 分钟读完 · 第 26 / 377 章

推荐答案

本题详细解读

1. fs.existsSync 方法

fs.existsSync 是 Node.js 中 fs 模块提供的一个同步方法,用于检查指定的文件或目录是否存在。它返回一个布尔值,如果文件或目录存在则返回 true,否则返回 false。

2. 使用场景

  • 文件存在性检查:在读取文件之前,通常需要检查文件是否存在,以避免程序抛出异常。
  • 目录存在性检查:在创建文件或写入文件之前,可能需要检查目录是否存在,如果不存在则创建目录。

3. 异步替代方案

虽然 fs.existsSync 是一个同步方法,但在某些情况下,你可能希望使用异步方法来避免阻塞事件循环。可以使用 fs.promises.access 或 fs.access 方法来实现异步检查。

4. 注意事项

  • 性能考虑:fs.existsSync 是同步操作,可能会阻塞事件循环,因此在性能敏感的场景下,建议使用异步方法。
  • 错误处理:在使用 fs.existsSync 时,通常不需要额外的错误处理,因为它不会抛出异常。但在使用异步方法时,建议使用 try-catch 来捕获可能的错误。