내 블로그 목록

금요일, 9월 04, 2009

[JavaScript] try ... catch ... 사용하기

..

Java와 같이 JavaScript에서도 try, catch 를 쓸수 있더군요..

 

(그런데...NE, IE간의 약간의 문법적 차이가 있어서, 주로 사용하는 IE 5.0으 경우를 듭니다)

 

사용법은..

 

try {

   // 문장....

  

} catch (e){

   alert (e);

}

 

이렇다.

 

catch는 try내에서 에러가 발생하였을때, 모든 에러를 잡아낸다..

잡힌 에러의 타입은 throw로 던진 에러의 타입이 되는데, 잘못된 변수등이나 시스템 에러의 경우

Error 라는 객체로 넘겨지게 된다.

 

Error는 속성으로 number와 description를 제공하는데, 이는 에러코드와 설명을 의미한다..

만일

 

try{

   windowsss.open();

} catch (e){

   alert ("code:" + e.number +",설명:" + e.description);

}

 

와 같이 window를 실수로 windowsss로 오타를 입력했을때, 발생되는 에러이다.

 

try{

  throw "hello world";

} catch (e){

  alert (e);

}

와 같은 코드에서는, 경고창에서 "hello world"를 볼수 있다.

 

그런데, catch문 내에서 잡혀진 에러에 따라 처리를 따로 하고 싶다면 다음과 같은 코드를 이용할 수 있다.

 

 if (e instanceof Error){

    alert ("시스템에러:" + e.description);

 } else if (typeof(e) == "string"){

    alert ("문자열에러:" + e);

 } else {

     alert (e);

 }

 

참고

http://www.webreference.com/js/column38/index.html

댓글 없음: