国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

javascript - async如此使用可以嗎?

瀏覽:90日期:2023-04-21 16:17:16

問題描述

最近看了一些文章開始使用async處理異步代碼,使用著比以前的異步回調(diào)好用的多,可是發(fā)現(xiàn)我的書寫方法好像有問題,貼出來,大家?guī)臀抑刚幌?...

(async function(){ let username = req.body.username; let password = req.body.password; // 查找當前用戶名是否已經(jīng)注冊(返回值為數(shù)組,沒有結(jié)果則為空數(shù)組,長度為0) let userIsRegisted = await user.findByName(username); // 因為用戶名的唯一性,可以使用==1或者!=0兩種方式判斷 if(userIsRegisted.length!=0){res.send(’當前用戶已注冊’);return; } // 密碼加密 let hashPassword = crypto.createHash(’sha1’).update(password).digest(’hex’); let obj = {username:username,password:hashPassword } // 添加新用戶 await user.create(obj); // 設置session req.session.username=username; req.session.loged = true; res.send(’注冊成功’); })();

先不管寫的邏輯了,就是這種調(diào)用方法對嗎?總感覺需要寫一個立即執(zhí)行函數(shù)好怪.....

問題解答

回答1:

如果沒有聲明該匿名函數(shù)為async,就不覺的這種寫法奇怪。由于該匿名函數(shù)中使用了await調(diào)用了另一個函數(shù),所以必須聲明為async,否則編譯報錯。可以直接像樓主寫的這樣立即執(zhí)行。不過更建議給該匿名函數(shù)聲明一個函數(shù)名,異步調(diào)用方式調(diào)用該函數(shù)。

回答2:

多用try catch,另外不是很清楚你這里為什么要包一個立即執(zhí)行函數(shù)。給async的函數(shù)定義名稱。后續(xù)不就可以自定義調(diào)用了

回答3:

一般這么用 是沒問題的。async函數(shù)用await調(diào)用時,從主函數(shù)程立即返回,等async函數(shù)結(jié)束時,再繼續(xù)執(zhí)行主函數(shù)。 如果不用await, 主函數(shù)會執(zhí)行完畢。同時async函數(shù)會異步的執(zhí)行。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 日韩一区二区三区在线播放 | 免费一级做a爰片久久毛片 免费一级做a爰片性色毛片 | 国产午夜亚洲精品理论片不卡 | 成人久久18免费网站游戏 | 国产美女一级视频 | 99精品免费视频 | 中文字幕在线观看日韩 | 日产国产精品亚洲系列 | 亚洲手机看片 | 亚洲欧美激情精品一区二区 | 中文字幕s级优女区 | 一级看片免费视频囗交 | 成人综合在线视频免费观看 | a级毛片免费观看在线播放 a级毛片免费看 | 黄a在线观看 | 欧美性色一级在线观看 | 69av亚洲| 久久青草国产手机看片福利盒子 | 国产日韩亚洲欧美 | 欧美在线视频二区 | 国产一级特黄a大片99 | 日韩高清免费观看 | 欧美亚洲国产日韩一区二区三区 | 国产成人免费在线视频 | 日本三级香港三级人妇99 | 久久爱91| 在线综合视频 | 黄色三级理沦片 | 在线久草 | 精品欧美亚洲韩国日本久久 | 欧美午夜精品一区二区三区 | 天天看有黄有色大片 | 国产中文字幕免费观看 | 日韩一级欧美一级毛片在 | 青青爽国产手机在线观看免费 | 久草视频新 | 国产欧美一区二区日本加勒比 | 无国产精品白浆是免费 | 综合久久99久久99播放 | 欧美精品国产一区二区三区 | 中文无线乱码二三四区 |