这是我对 Stack Overflow 的第一个问题,但过去 2 年我一直在使用 SO,它提供了丰富的信息。
我最近拿起了 NodeJS,但我遇到了两难境地。我正在尝试找出使用 NodeJS 加载/插入大约 2000 行数据的最佳方法,如果可能的话,使用首选的 Async 方法。我必须从 API 中获取数据,然后获取 JSON 数据并将数据加载到 3 个表中,以便以后可以使用这些数据。该文件有 17 个 Country 对象,然后是 77 个 State 对象和大约 2000 个 Counties 对象。
我正在解析的 JSON 文件格式是:
[{Country:{
Name: ...
CountryId: ...
States: {
Name: ...
StateId: ...
Counties: {
Name: ...
CountyId:...
}
}
},{Country+n:{
Name: ...
CountryId: ...
States: {
Name: ...
StateId: ...
Counties: {
Name: ...
CountyId:...
}
}
}];
因此,使用我的 PHP 背景,我会立即在 JavaScript 中创建三个这样的函数:
function Country(data){
for(var z in data){
var country = data[z];
InsertInCountryDB(country.CountryId, country.Name);
State(Country.State);
}
}
function State(data){
for(var z in data){
var state = data[z];
InsertInStateDB(state.StateId, state.Name);
State(Country.State);
}
}
function County(data){
for(var z in data){
var county = data[z];
InsertInCountyDB(county.CountyId, county.Name);
}
}
我的第一次尝试是为每个对象创建一个事件,然后使用这些事件深入到对象内部,然后插入数据。我发现它可以很好地将国家和州的详细信息插入数据库,但是使用县数据,它会出错。
我不是在寻找我的问题的答案,而是寻找编码技巧来帮助我摆脱我的三个同步功能,而是使用异步功能。
谢谢