第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

nodejs怎么同步從一個(gè)數(shù)據(jù)庫(kù)查詢函數(shù)中返回一個(gè)值?

nodejs怎么同步從一個(gè)數(shù)據(jù)庫(kù)查詢函數(shù)中返回一個(gè)值?

qq_遁去的一_1 2019-03-30 11:36:49
我想把從數(shù)據(jù)庫(kù)中查詢得到的值儲(chǔ)存到一個(gè)變量中然后打印出來,但數(shù)據(jù)庫(kù)查詢是異步的,打印函數(shù)總是先一步調(diào)用,查詢函數(shù)后一步調(diào)用,打印出來的值是空的。下面是代碼。varsqlite3=require('sqlite3').verbose();varasync=require('async');varstr="";vardb=newsqlite3.Database('score.db',function(){db.all("select*fromscore",function(err,res){if(!err){//console.log(JSON.stringify(res));str=JSON.stringify(res);console.log(str);//@1這里輸出的是有值的str}else{console.log(err);}});});console.log(str+"jjjj");//@2這里輸出的Str,是沒有值的空的下面是輸出結(jié)果:jjjj這是@2console打印的,Str是空的[{"id":1,"name":"jim","score":"100"},{"id":2,"name":"tom","score":"200"}]這是@1console打印的,str是有值的。請(qǐng)問怎樣讓查詢回調(diào)先執(zhí)行,讓str獲得值,傳遞出來,然后再執(zhí)行最后一句@2的打印語句。javascript的異步回調(diào)真令人頭痛啊,一直不知道怎么解決。
查看完整描述

2 回答

?
梵蒂岡之花

TA貢獻(xiàn)1900條經(jīng)驗(yàn) 獲得超5個(gè)贊

恭喜進(jìn)入callback大坑
varsqlite3=require('sqlite3').verbose();
varasync=require('async');
varstr="";
varget_result=function(callback){
vardb=newsqlite3.Database('score.db',function(){
db.all("select*fromscore",function(err,res){
if(!err){
callback(JSON.stringify(res));
console.log(str);//@1這里輸出的是有值的str
}else{
console.log(err);
}
});
});
}
get_result(function(data){
console.log(data)
})
                            
查看完整回答
反對(duì) 回復(fù) 2019-03-30
  • 2 回答
  • 0 關(guān)注
  • 1016 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)