亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

javascript - nodejs函數返回值為undefined,不太明白為什么。

瀏覽:99日期:2023-09-20 13:29:45

問題描述

javascript - nodejs函數返回值為undefined,不太明白為什么。javascript - nodejs函數返回值為undefined,不太明白為什么。

最后用了promise解決,代碼如下:exports.selectByUsername = selectByUsername;function selectByUsername(username){

var promise = new Promise(function(resolve){ var sql = 'SELECT COUNT(*) count FROM wx_user WHERE username = ?'; var sqlParams = [username]; var count; co.query(sql,sqlParams,function(err,result){if(err){ return console.log(err.message);}console.log('------------------------開始查詢---------------------');console.log(result);var str = JSON.stringify(result);var json = JSON.parse(str);count = json[0].count;console.log(count);console.log('------------------------查詢結束---------------------');resolve(count); });});promise.then(function(value){ // console.log(value); return value;});return promise;

}

app.post(’/ajax’,urlencodedParser,function(req,res){

username = req.body.name;console.log(username);var promise = s.selectByUsername(username);promise.then(function(value){ console.log(value); if(value!==1){res.send('用戶名不存在'); }});

});

參考文檔:http://liubin.org/promises-book/

問題解答

回答1:

query里面的function在query完成后才會執行到,而這個時候外部函數已經返回了,所以count不會賦到值,仍然為undefined

回答2:

寫在query里也不會返回count的,因為query這個方法是異步的

回答3:

簡而言之,把return count 寫在query 里面就好了。

標簽: JavaScript
主站蜘蛛池模板: 色伊人色成人婷婷六月丁香 | 国产一级c片 | 国产在线19禁免费观看国产 | 亚洲一区二区免费看 | 国产精品一区二 | 天天看a| 国产++欧洲韩国野花视频 | 久久精品国产线看观看亚洲 | 欧美不卡视频 | 99自拍视频在线观看 | 一级毛片不收费 | 色婷婷狠狠久久综合五月 | 黄网址在线永久免费观看 | 麻豆果冻传媒精品二三区 | 精品视频一区二区三区在线观看 | 图片专区亚洲色图 | 免费黄色网址在线观看 | 亚洲网站免费观看 | 日本黄网址 | 一级片视频在线 | 福利一区二区三区视频在线观看 | 国产精品尹人在线观看免费 | 成人毛片在线 | 免费看麻豆视频 | 九一视频在线免费观看 | va在线观看 | 国产在线高清一级毛片 | 亚洲精品综合一区二区 | 亚洲精品ai换脸一区二区三区 | 国产精品亚洲片夜色在线 | 国产成人精品男人的天堂538 | 日韩在线播放一区 | 亚洲国产黄色 | 欧美精品亚洲精品日韩经典 | 亚洲午夜视频在线 | 欧美一级级a在线观看 | 国产精品亚洲高清一区二区 | 国产高清乱码无卡女大生 | 欧美视频免费在线播放 | 亚洲成人在线网 | 欧美黄色免费大片 |