• Q&A
  • 회원가입
  • 로그인

[Statement] JS - try ... catch ... finally 구문 (= 트라이캐치파이널구문)

try ... catch ... finally 예제

 

<p>※ 레벨은 2 ~ 10 만 입력 가능</p>


<input id="level" type="text">

<button type="button" onclick="homzzang()">클릭</button>

<p id="message"></p>


<script>

function homzzang() {

  var message, x;

  message = document.getElementById("message");

  message.innerHTML = "";

  x = document.getElementById("level").value;

  try

    if(x == "")  throw " 없음.";

    if(isNaN(x)) throw " 숫자 아님.";

    if(x > 10)   throw "너무 큼.";

    if(x < 2)  throw "너무 작음.";

  }

  catch(err) {

    message.innerHTML = "입력값 " + err;

  }

  finally {

    document.getElementById("level").value = "";

  }

}

</script>

 

결과보기

 

 

try ... catch ... finally 정의

 

코드 실행 동안 코드 블록에서 발생 가능한 일부 또는 모든 오류를 처리.

 


 

1.

오류는 코딩 에러, 잘못된 입력, 예측 불가사항 등으로 인해 발생하는데,

try ... catch ... finally 구문을 사용하면 코드 실행 중에 처리가 가능함.

 

2.

try 문 : 코드 실행되는 동안 테스트 할 코드 블록 정의.

catch 문 : try 블록에서 오류가 발생할 경우 실행할 코드 블록 정의.

finally 문 : 결과와 상관없이, try ... catch 문 후에 코드 실행 가능.


3.

catch 및 finally 문은 모두 선택사항이지만,
try 문 사용 동안 둘 중 하나만 사용해야 함.


4.

오류가 발생하면 JS는 일반적으로 중지되고 오류 메시지 생성함.
throw 문을 사용하여 사용자 지정 오류를 생성 (예외 발생).
try 및 catch와 함께 throw 사용하면 프로그램 흐름을 제어하고 사용자 지정 오류 메시지를 생성 가능.


5.

더 자세한 JS 오류 제어는 여기 참고.

 

 

 

오늘도 즐겁게 열심히 .....

찾아주셔서 감사합니다. Since 2012