본문 바로가기

Frontend/Java Script

JS 예외 처리 (part. 01) - 예외 처리

프로그램 실행 중 발생하는 오류를 예외(Exception)

프로그래밍 언어의 문법적인 오류로 프로그램이 실행되기도 전에 발생하는 오류를 에러(Error) 라고 함


기본 예외 처리

이벤트 연결의 예외 처리

function registerEventListener(node, event, listener) {
  if (node.addEventListener) {
    // 파이어폭스, 크롬, 사파리, 오페라
    node.addEventListener(event, listener, false);
  } else if (node.attachEvent) {
    // 인터넷 익스플로러
    node.attachEvent('on' + event, listener);
  }
}

 

이벤트 객체의 예외 처리

function whenClick(e) {
  var event = window.event || e;
  var willAlert = '';
  willAlert += 'clientX : ' + event.clientX + '\n';
  willAlert += 'clientY : ' + event.clientY + '\n';
  alert(willAlert);
}

고급 예외 처리

고급 예외 처리는 try 키워드, catch 키워드, finally 키워드로 예외를 처리하는 방법

try{

} catch (exception) {

} finally {

}

try 구문에서 예외가 발생하면 catch 구문에서 처리함 finally 구문은 필수 사항은 아니며 예외 발생 여부와 상관없이 수행해야 되는 작업이 있을 때 사용

 

try {
    willExcept.byebye();
  } catch (exception) {
    alert('예외가 발생했습니다');
  } finally {
    alert('예외 발생 가능 부분을 통과했습니다.');
  }

 

이벤트 연결 고급 예외 처리

function registerEventListener(node, event, listener) {
  try {
    // 최신 버전의 웹 브라우저
    node.addEventListener(event, listener, false);
  } catch (exception) {
    // 구버전의 인터넷 익스플로러
    node.attachEvent('on' + evnet, listener);
  }
}
window.onload = function () {
  var header = document.getElementById('header');
  registerEventListener(header, 'click', function () {
    alert('Click');
  });
};