JavaScript

예외상황처리하기
  • 조회수 5,240
  • 작성일 2008-08-01
  •  

JavaScript를 실행시키다 에러가 발생하면

경고창과 함께 브라우저의 오른쪽 하단에 노란색 아이콘이 생깁니다.
이러한 에러를 처리하는데 window.onError 객체를 이용해서 처리 할 수도 있지만
자바스크립트에서도 try{}catch{} 구문을 사용할수가 있군요..

try{
  
  //실제로 실행할 부분
}

catch(e){
   //에러가 발생했을때 처리할 부분
}

finally{
   //에러가 발생하든 안하든 해당 블럭 명령을 실행한후 무조건 처리하는 부분
}

여러개의 catch 구문이나 finally 같은 구문을 같이 사용할 수 없지만
에러가 발생해도 그 사실을 사용자들에게 알려주지 않으려 하거나

디버깅 할때 유용하게 사용할 수 있습니다.

catch() 구문에서 인자로 넘겨받는 e 라는 객체는 그 자체로 에러메시지를 담고 있고 

가지고 있는 멤버변수에는 name , message , number , description 이 있습니다.

<script language=JavaScript>
function ExcTest()
{
    try{
        lert(document.all.MainForm);
    }catch(e){
        alert(e + "|" + e.name + "|" + e.message + "|" + e.number + "|" + e.description);
        return;
    }
}
ExcTest();
</script>