色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

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

javascript - Async/Await報錯

瀏覽:81日期:2023-09-02 08:25:08

問題描述

這段代碼問題在哪,一運行就報錯

var sleep = async function(para) {return new Promise(function(resolve, reject) { setTimeout(function() {resolve(para * para) }, 1000)}) } var errorSleep =async function(para) {return new Promise(function(resolve, reject) { setTimeout(function() {reject(’ ErrorSleep’) }, 1000)}) } try {var result1 = await sleep(1);var result2 = await errorSleep(4);var result3 = await sleep(1);console.log(’result1: ’, result1)console.log(’result2: ’, result2)console.log(’result3: ’, result3) } catch (err) {console.log(’err: ’, err)console.log(’result1: ’, result1)console.log(’result2: ’, result2)console.log(’result3: ’, result3) }

javascript - Async/Await報錯

問題解答

回答1:

await 只能在 async 包裝的函數里面用。就和yield只能在generator函數里面用一樣。

回答2:

樓上不是說了嗎,丟到async函數里。

var sleep = async function(para) {return new Promise(function(resolve, reject) { setTimeout(function() {resolve(para * para) }, 1000)}) } var errorSleep =async function(para) {return new Promise(function(resolve, reject) { setTimeout(function() {reject(’ ErrorSleep’) }, 1000)}) }//一樣丟到async函數里 var af = async function() {try { var result1 = await sleep(1); var result2 = await errorSleep(4); var result3 = await sleep(1); console.log(’result1: ’, result1) console.log(’result2: ’, result2) console.log(’result3: ’, result3)} catch (err) { console.log(’err: ’, err) console.log(’result1: ’, result1) console.log(’result2: ’, result2) console.log(’result3: ’, result3)} } af();回答3:

await 只能在 async 函數(函數,函數表達式,箭頭函數) 中使用,所以你只需要寫個 async 函數把那段代碼包起來就好了,我比較喜歡寫 main 函數而不是直接在全局作用域內運行

async function main() { try {var result1 = await sleep(1);var result2 = await errorSleep(4);var result3 = await sleep(1);console.log('result1: ', result1);console.log('result2: ', result2);console.log('result3: ', result3); } catch (err) {console.log('err: ', err);console.log('result1: ', result1);console.log('result2: ', result2);console.log('result3: ', result3); }}// 記得調用main();

另外也可以使用 async IIFE 表達式,比如

// IIFE 函數表達式(async function() { // todo main process})();// IIFE Lambda 表達式(箭頭函數表達式)(async () => { // todo main process})();

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 国产成人免费网站在线观看 | 欧洲一级视频 | 国产成人精品在视频 | 亚洲最大的视频网站 | 波多野在线播放 | 欧美综合自拍亚洲综合 | 成年人色网站 | xxxwww欧美性| 中文字幕成人在线 | 欧美日韩免费一区二区在线观看 | 日本免费在线视频 | 一区二区三区在线视频观看 | 国产精品3| 国产成人丝袜视频在线视频 | 高清一区二区在线观看 | 99热在线免费 | 综合久久久久久久 | 波多野结衣一级 | 成人软件网18免费视频 | 日本免费视频观看在线播放 | 热99re久久精品2久久久 | 黄色福利网 | 综合在线视频精品专区 | 免费一级性片 | 99在线视频网站 | 国产在线综合一区二区三区 | 亚洲精品中文字幕字幕 | 性色tv| 欧美一级毛片免费高清aa | 国产成人精品曰本亚洲78 | 国产成人精品免费久久久久 | 九九香蕉视频 | 国产三香港三韩国三级不卡 | 欧美在线黄色 | 久久欧美精品欧美九久欧美 | 91在线国产观看 | 在线播放精品 | 在线 | 一区二区三区 | 一级做a爰片久久毛片唾 | 欧美亚洲在线观看 | 精品国产a|