0
我試着使用Node.js的重組複雜的JSON數組,下面是我的代碼控制檯打印但不響應
let n = JSON.parse(JSON.stringify(arr2));
async.forEachOf(n, function(value, key, cb1) {
let obj = [];
async.forEachOf(value.flightDetail.flightDetails, function(v, k, cb2) {
let dateTimeInfo = v.flightInformation.productDateTime;
let isNextDay = ((dateTimeInfo.dateVariation) ? true : false);
let sectorInf = v.flightInformation.location;
let flightDetails = {};
flightDetails.eType = v.flightInformation.productDetail.equipmentType;
flightDetails.marketingCarrier = v.flightInformation.companyId.marketingCarrier;
flightDetails.operatingCarrier = v.flightInformation.companyId.operatingCarrier || v.flightInformation.companyId.marketingCarrier;
obj['segment-' + ((k) + 1)] = {
departureDate: dateTimeInfo.dateOfDeparture,
arrivalDate: dateTimeInfo.dateOfArrival,
departureTime: dateTimeInfo.timeOfDeparture,
arrivalTime: dateTimeInfo.timeOfArrival,
isNextDay: isNextDay,
sourceSector: sectorInf[0].locationId,
sourceTerminal: sectorInf[0].terminal || "",
desitinationSector: sectorInf[1].locationId,
desitinationTerminal: sectorInf[1].terminal || "",
flightInfo: flightDetails
}
console.log(JSON.stringify(obj)); **-- This doesn't working**
console.log(obj); **-- this does work**
cb2();
}, function() {
arr3.push({
flight: obj,
price: value.priceObject
});
cb1();
});
}, function() {
callback();
});
當我嘗試輸出由於某種原因,它沒有最終ARR3響應似乎在工作。但是,當我安慰它,它的打印正確。
這是否與promise/async有關。
你可以創建jsfiddle嗎? – Ashvin777
您是否正在進行異步呼叫?我試圖弄清楚爲什麼你使用'async.forEachOf'而不是同步的東西。另外,什麼是特別不工作? – JohnnyHK
你在哪裏打印數組? – marvel308