出于好奇,我想知道两者之间是否有任何区别。
读取文件同步:
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)