.then寫在.catch之后,發生異常后.then中的代碼是否還會執行


  • 發生的異常被catch捕獲到之后,執行完catch中的代碼后,還是會繼續執行.then中的代碼。

  • 如果想要阻止后續代碼繼續執行,可以使用 throw new Error 向外拋出錯誤,或者使用promise的reject()。

    注:
    	1、正常執行的代碼如果第一句出現異常,就不會執行第二句以及后面的所有正常代碼
    	2、對於 try catch finally而言,無論是否出現異常,異常是否被catch捕獲,finally中的代碼都會被執行,即使 try 或者 catch 中有 return 語句,finally 中的代碼還是會執行,finally 執行完后,如果try中的異常被catch捕獲,就會繼續執行try catch外面的其他無關代碼,如果沒有被捕獲,就會繼續向外拋出異常,即中斷執行后續所有代碼。
    	
    	如下所示:
    	try{
    		//正常執行的代碼
    	}catch (e){
    		//出錯后執行的代碼
    	}finally{
    		//無論正常執行還是出錯,之后都會執行的代碼
    	}
    	//跟上面try catch無關的代碼
    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM