Skip to content

Instantly share code, notes, and snippets.

View gordon-david's full-sized avatar

David Gordon gordon-david

View GitHub Profile
@gordon-david
gordon-david / node-walk.es6
Created October 21, 2020 23:44 — forked from lovasoa/node-walk.es6
Walk through a directory recursively in node.js.
// ES6 version using asynchronous iterators, compatible with node v10.0+
const fs = require("fs");
const path = require("path");
async function* walk(dir) {
for await (const d of await fs.promises.opendir(dir)) {
const entry = path.join(dir, d.name);
if (d.isDirectory()) yield* walk(entry);
else if (d.isFile()) yield entry;
@gordon-david
gordon-david / node-walk.es6
Created October 21, 2020 23:44 — forked from lovasoa/node-walk.es6
Walk through a directory recursively in node.js.
// ES6 version using asynchronous iterators, compatible with node v10.0+
const fs = require("fs");
const path = require("path");
async function* walk(dir) {
for await (const d of await fs.promises.opendir(dir)) {
const entry = path.join(dir, d.name);
if (d.isDirectory()) yield* walk(entry);
else if (d.isFile()) yield entry;