我只是試圖訪問數據庫,而解析json。這個代碼小塊使我生命地獄
異步調用數據庫for循環不等
function loopColumns(val, cb){
db.one('select tag_name from t_tag where tag_id = $1', val)
.then(function (data) {
//console.log(data.tag_name)
cb(null, data.tag_name)
});
}
VAR值= { 「旅行活動」:[1,2], 「旅遊風格」:[3,4]};
for(i in value){
//console.log(value[i], i)
var output = '';
var outcome = '';
var str = value[i];
for(j in str){
loopColumns(str[j], function(err,res){
if(outcome=='') outcome= res;
else outcome= outcome+' , '+res;
console.log(outcome);
})
}
var output = i+' : '+outcome+' \n';
console.log('output \n'+output);
};
這是以輸出
輸出 旅遊活動:
輸出 旅行風格:
好吃
好食物,Hicking
良好的食物,Hicking,XYZ
良好的食物,Hicking,XYZ ,測試
我想獲得輸出
旅行風格:良好的食物,Hicking
旅遊活動:XYZ,測試
PLZ救我的命
使用'承諾'.. – Rayon
刪除'var output'的重複聲明 – Rayon
我已經在使用承諾,它是異步行爲的問題 – shivshankar