簡體   English   中英

嵌套異步/等待JavaScript

[英]nesting async/await javascript

這是有效的異步/等待邏輯:從另一個try / catch中調用try / catch嗎?

//within async function...

try { 
    await asyncFunctionFirst();
    } catch (errFirst) {
          try {
              await asyncFunctionSecond();              
          } catch (errSecond) {
              // return errSecond response
          }
      //return errFirst response          
    } 
//return response ok 

是的,這是有效的語法。 但是我不會這樣寫。 寧可使用

try { 
    await asyncFunctionFirst();
    return …; // response ok 
} catch (errFirst) {
    try {
        await asyncFunctionSecond();
        return …; // errFirst response
    } catch (errSecond) {
        return …; // errSecond response
    }
}

(如果您還想從部分中捕獲異常-如果不是,則您的版本很好,有關替代方法,請參見此處

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM