如何从异步等待中断开 Array.map 链?

Mat*_*ood -1 javascript arrays asynchronous functional-programming async-await

如何在等待状态下运行 Array.map?

const CLASS_PATH = 'User/matt/Github/project';
const PACKAGE_JSON = 'package.json';

const walk = async path => {
  let dirs = [];
  for (const file of await readdir(path)) {
    if ((await stat(join(path, file))).isDirectory()) {
      dirs = [
        ...dirs,
        file,
      ];
    }
  }
  return dirs;
};


async function main() {
  const packagePaths = await walk(CLASS_PATH)
        .map(pkgName => join(CLASS_PATH, pkgName, PACKAGE_JSON));

}
main();
Run Code Online (Sandbox Code Playgroud)

Jon*_*lms 5

括号()始终可用于更改运算符优先级:

 (await walk(CLASS_PATH)).map(/*...*/)
Run Code Online (Sandbox Code Playgroud)