Try Catch

1549 ワード

Try Catch


Mdn公式ファイルによるとこうなっています.
try...catch文は、実行するコードブロックを表示し、例外が発生した場合の応答を指定します.
まず文法を知りたいです.
try {
  try_statements
}
[catch (exception_var) {
  catch_statements
}]
[finally {
  finally_statements
}]
try_statements
運転部
catch_statements
tryでExceptionを実行するブロック
finally_statements
tryは、完了後に実行されるブロックを宣言します.この関数は、例外が発生するかどうかにかかわらず実行されます.
try {

  alert('try 블록 시작');  // (1) <--

   varibles; // 변수가 선언되지 않아 에러발생

  alert('try end' 여기까지 실행되지 않고 catch 문으로);  // (2)

} catch(err) {

  alert(`에러가 발생했습니다!`); // (3) <--

}
try文はオーバーラップできます.内部のtry文にcatchブロックがない場合は、try文を囲むcatchブロックが入力されます.
catchブロックは複数しか定義できず、finallyブロックは1つしか定義できません.またcatchとfinallyブロックはいずれかのブロックを定義しているだけで問題ありません.
try {
  ****$%#$^#%$&%^*^%*$#$@%#%
} catch(e) {
  alert("유효하지 않은 코드는 자바스크립트 엔진이 코드를 이해할 수 없습다");
}
コードの読み取り中に発生したエラーを「parse-timeエラー」と呼び、エンジンがこのコードを理解できないため、parse-timeエラーはコードで復元できません.
try..catchは有効コードで発生したエラーのみを処理できます.これらのエラーは、ランタイムエラーまたは例外と呼ばれます.
例2.
try {
     await createBoard({
       variables: {
           aaa: "훈이",
           bbb: "1234",
           ccc: "안녕하세요 훈이에요",
           ddd: "반갑습니다"
        }
    })

} catch(error) {
	alert(error.message)     // 경고창(실패했습니다.)  ==>  백엔드 개발자가 보내주는 실패 메시지
} finally {
	// 성공, 실패 여부와 상관없이 무조건 마지막에 실행되는 부분
	// 필요없다면 생략 가능
}