Using callback

const fs = require('fs');
const path = './file.txt';
fs.access(path, (error, stats) => {
if (error) {
console.error(error);
} else {
console.log(stats);
}
});
const fs = require('fs'); const path = './file.txt'; fs.access(path, (error, stats) => { if (error) { console.error(error); } else { console.log(stats); } });
const fs = require('fs');

const path = './file.txt';

fs.access(path, (error, stats) => {
  if (error) {
    console.error(error);
  } else {
    console.log(stats);
  }
});

Using util.promisify

Node v8.0.0 added support for a built-in util.promisify.

const fs = require('fs');
const { promisify } = require('util');
const path = './file.txt';
// Convert `fs.access()` into a function that returns a promise
const accessAsync = promisify(fs.access);
(async () => {
try {
const stats = await accessAsync(path);
console.log(stats);
} catch (error) {
console.error(error);
}
})();
const fs = require('fs'); const { promisify } = require('util'); const path = './file.txt'; // Convert `fs.access()` into a function that returns a promise const accessAsync = promisify(fs.access); (async () => { try { const stats = await accessAsync(path); console.log(stats); } catch (error) { console.error(error); } })();
const fs = require('fs');
const { promisify } = require('util');

const path = './file.txt';

// Convert `fs.access()` into a function that returns a promise
const accessAsync = promisify(fs.access);

(async () => {
   try {
    const stats = await accessAsync(path);

    console.log(stats);
   } catch (error) {
    console.error(error);
   }
})();

Using fs.promises

The fs.promises API provides an alternative set of asynchronous file system methods that return Promise objects rather than using callbacks.

Node v10.0.0 added support for a built-in util.promisify.

const fsPromises = require('fs').promises; // Alternatively, you can import fs with require('fs/promises')
const path = './file.txt';
(async () => {
try {
const stats = await fsPromises.stat(path);
console.log(stats);
} catch (error) {
console.error(error);
}
})();
const fsPromises = require('fs').promises; // Alternatively, you can import fs with require('fs/promises') const path = './file.txt'; (async () => { try { const stats = await fsPromises.stat(path); console.log(stats); } catch (error) { console.error(error); } })();
const fsPromises = require('fs').promises; // Alternatively, you can import fs with require('fs/promises')

const path = './file.txt';

(async () => {
   try {
    const stats = await fsPromises.stat(path);

    console.log(stats);
   } catch (error) {
    console.error(error);
   }
})();