亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

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

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

瀏覽:111日期: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
主站蜘蛛池模板: 亚洲成人免费网站 | 美女午夜色视频在线观看 | 亚洲小视频 | 国产三级国产精品国产国在线观看 | 欧美一级毛片欧美一级无片 | 久久精品国产精品亚洲人人 | 男人的天堂高清在线观看 | 美女拍拍拍爽爽爽爽爽爽 | 福利片免费一区二区三区 | 在线精品免费视频 | 毛片免费全部免费播放 | 贵州美女一级纯黄大片 | 狠狠色噜噜狠狠狠米奇9999 | 91亚洲精品一区二区福利 | 91精品久久久久久久久网影视 | 一级黄色毛片播放 | 国产免费一区二区三区 | 日韩成人黄色片 | 日韩美三级 | 午夜刺激爽爽视频免费观看 | 爆操巨乳美女 | 久久99综合国产精品亚洲首页 | 亚洲国产精品a一区二区三区 | 黄视频在线免费看 | 精品国产自在在线在线观看 | 香蕉tv亚洲专区在线观看 | 女子张开腿让男人桶视频 | 国产高清厕所盗摄视频 | 亚洲欧美v视色一区二区 | 日韩在线观看中文字幕 | 亚洲国产欧美一区二区欧美 | 成人黄色免费网址 | 99久久国内精品成人免费 | 国产成人黄网在线免 | 亚洲 欧美 日韩在线 | 国产黄a三级三级看三级 | 一区二区三区精品国产 | 免费人成黄页网站在线观看国产 | 日韩美女视频一区 | 久久草在线视频免费 | 久久国产精品久久 |