如果我在项目中使用 JSON 数据,最好使用 readFile,如下所示:
var fs = require('fs');
var obj;
fs.readFile('file', 'utf8', function (err, data) {
if (err) throw err;
obj = JSON.parse(data);
});
Run Code Online (Sandbox Code Playgroud)
或者只使用 require
var config = require('./file.json');
Run Code Online (Sandbox Code Playgroud)
我尝试过寻找性能比较,但找不到任何结果。在FredKSchott 的这篇文章中,作者深入研究了 require 函数,看起来它可以通过缓存提高性能,但它看起来是同步的,而 fs.readFile 是异步的
两个主要区别:
require()缓存结果,因此在后续读取 JSON 时不会看到对 .json 文件的更改,require()除非显式从 require 缓存中删除结果。
require()是同步的,fs.readFile()是异步的。当然,fs.readFileSync()如果您想要同步行为,您可以使用(但不确定为什么)。
除此之外,您可以按照自己想要的方式进行操作。
fs.readFile().require().fs.readFile()保留服务器的异步响应能力。require(),因为它只是更少的代码,并且是内置于 Node.js 中的行为。| 归档时间: |
|
| 查看次数: |
1431 次 |
| 最近记录: |