Skip to main content
Deno 2 is finally here 🎉️
Learn more
Module

std/fs/exists.ts>existsSync

Deno standard library
Go to Latest
The Standard Library has been moved to JSR. See the blog post for details.
function existsSync
import { existsSync } from "https://deno.land/std@0.220.0/fs/exists.ts";

Test whether or not the given path exists by checking with the file system. Please consider to check if the path is readable and either a file or a directory by providing additional options:

import { existsSync } from "https://deno.land/std@0.220.0/fs/mod.ts";
const isReadableDir = existsSync("./foo", {
  isReadable: true,
  isDirectory: true
});
const isReadableFile = existsSync("./bar", {
  isReadable: true,
  isFile: true
});

Note: do not use this function if performing a check before another operation on that file. Doing so creates a race condition. Instead, perform the actual file operation directly.

Bad:

import { existsSync } from "https://deno.land/std@0.220.0/fs/mod.ts";

if (existsSync("./foo")) {
  Deno.removeSync("./foo");
}

Good:

// Notice no use of existsSync
try {
  Deno.removeSync("./foo", { recursive: true });
} catch (error) {
  if (!(error instanceof Deno.errors.NotFound)) {
    throw error;
  }
  // Do nothing...
}

Parameters

path: string | URL
optional
options: ExistsOptions

Returns

boolean