将多个json文件读入JavaScript中的对象数组
我需要读取文件夹下的多个json文件。数据文件路径如下所示:将多个json文件读入JavaScript中的对象数组,javascript,node.js,Javascript,Node.js,我需要读取文件夹下的多个json文件。数据文件路径如下所示: ./data/json1.json ./data/json2.json 我的初始值设定项类的工作原理如下: const j1 = require('./data/json1.json'); const j2 = require('./data/json2.json'); init(){ return j1.concat(j2); } 由于数据下的文件列表可能会增加,并且每次都需要修改,是否有更好的方法来执行此操作 我最好避
./data/json1.json
./data/json2.json
我的初始值设定项类的工作原理如下:
const j1 = require('./data/json1.json');
const j2 = require('./data/json2.json');
init(){
return j1.concat(j2);
}
由于数据下的文件列表可能会增加,并且每次都需要修改,是否有更好的方法来执行此操作
我最好避免在文件夹中循环,并在init()
中读取要附加到数组对象中的文件
你可以使用软件包
作为一种变体:
“严格使用”;
常数fs=要求('fs');
const path=require('path');
const dir='/数据';
函数init(){
返回fs.readdirSync(dir)
.filter(name=>path.extname(name)=='.json')
.map(name=>require(path.join(dir,name));
}
作为一种变体:
“严格使用”;
常数fs=要求('fs');
const path=require('path');
const dir='/数据';
函数init(){
返回fs.readdirSync(dir)
.filter(name=>path.extname(name)=='.json')
.map(name=>require(path.join(dir,name));
}
我们在哪里使用glob?这是正常的文件读取,我最好避免。如果不想再次修改代码,请使用glob获取路径。path.join
返回一个字符串,不带forEach方法。星号也不起作用了我们在哪里用glob?这是正常的文件读取,我最好避免。如果不想再次修改代码,请使用glob获取路径。path.join
返回一个字符串,不带forEach方法。星号也不起作用
const glob = require("glob");
const path = require("path");
glob('data/*.json', function (er, files) {
files.forEach(function(file) {
//Do your thing
})
})