小编Pat*_*lla的帖子

readFileSync 和在 readFile 之上使用 promisify 和 async/await 的区别

出于好奇,我想知道两者之间是否有任何区别。

读取文件同步:

function parseFile(filePath) {
  let data = fs.readFileSync(filePath);
}
Run Code Online (Sandbox Code Playgroud)

使用promisify读取文件:

const readFilePromise = promisify(fs.readFile);
async function parseFile(filePath) {
  let data = await readFilePromise(filePath);
}
Run Code Online (Sandbox Code Playgroud)

如果您需要一些上下文,我会尝试读取文件夹中的一堆文件,替换每个文件中的大量值,然后再次写入。

我不知道对这些操作使用 Asyncronous 或 Synchronous 代码是否有任何区别。

完整代码:

function parseFile(filePath) {
  let data = fs.readFileSync(filePath);
  let originalData = data.toString();
  let newData = replaceAll(originalData);

  return fs.writeFileSync(filePath, newData);
}

function readFiles(dirPath) {
  let dir = path.join(__dirname, dirPath);
  let files = fs.readdirSync(dir); // gives all the files
  files.map(file => parseFile(path.join(dir, file)));
}

function replaceAll(text) {
  text = text.replace(/a/g, 'b'); …
Run Code Online (Sandbox Code Playgroud)

javascript fs node.js async-await

8
推荐指数
1
解决办法
1791
查看次数

标签 统计

async-await ×1

fs ×1

javascript ×1

node.js ×1