当使用require()
将数据导入Node.js
JSON
时,它的功能似乎类似于通用对象。 例如,下面的代码按预期工作。
const jsonData = require('./randomData.json');
for(property in jsonData) {
console.log(property);
}
但是,导入的JSON
是成为通用对象还是特殊情况? 例如,JS包括arrays
,也包括array-like objects
。 是这样的吗?
require('./randomData.json')
的返回值与您已经完成的返回值相同JSON.parse(fs.readFileSync(require.resolve('./randomData.json')))
即返回值已被解析。使用 require 而不是这个的主要效果是 json 缓存在模块数组中。
我想你对 JSON.parse 感到困惑,导入的对象是 json,但 JSON.parse 将字符串作为参数并将其转换为 json,你给它 json 作为参数。