在 Node 中,当我需要一个文件时,它通常默认是一个来自 Node 模块导出的对象。
所以我想知道除了 module.exports
的同步特性和 fs
的异步特性之外,它们之间的其他区别是什么通过 module.exports 与文件系统库检索 JSON 文件,好/坏 |优点缺点。谢谢!
场景1
file_1.js
module.exports = [{A-JSON}];
file_2.js
require json from ('./file_1');
console.log(json);
场景2
file_1.js
[{A-JSON}]
file_2.js
fs = require('fs');
fs.readFile('./file_1', function (err,data) {
if (err) {
return console.log(err);
}
console.log(data);
});
最佳答案
首先,您应该知道 require
也可用于加载 json 文件 - 如文档所述 here .
因此,对于您的第二种情况,只需重命名为 file_1.json
,您也可以使用 require。
在这种情况下,如果您使用 fs
,您将需要手动JSON.parse
您的文件,而 require
会自动为你。
另一个区别是require
系统使用缓存,这样如果你想在另一个文件中使用相同的对象,它不会从文件系统中再次读取
我认为最好遵循标准并尽可能使用 require
。
关于javascript - Node.js module.exports 与文件系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55199958/