참조 : http://www.w3schools.com/js/js_try_catch.asp

자바스크립트 - 에러 잡기
인터넷을 돌아다니다 보면 누구나 한번쯤 "디버그 하시겠습니까?"라는 팝업창을 본적이 있을 것이다. 이런 창은 개발자들에게는 유용한 정보일지 몰라도 사용자에게는 그렇치 않다. 아마 사이트를 바로 떠날 것이다.

이번에는 그러한 에러를 잡아서 자바스크립트로 창을 띄워서 사용자를 잃지 않는 방법을 살펴본다.

웹 페이지에서 에러를 잡는 두 가지 방법
1. try - catch문 사용
2. onerror 이번트 사용

Try...Catch Statement
try 블럭으로 에러가 발생하는지 확인할 부분을 감싸고 catch 블럭으로 에러가 발생했을 때 할 일을 정의한다.
문법

try
{
//Run some code here
}
catch(err)
{
//Handle errors here
}

예제

<html>
<head>
<script type="text/javascript">
var txt=""
function message()
{
try
  {
  adddlert("Welcome guest!")
  }
catch(err)
  {
  txt="There was an error on this page.\n\n"
  txt+="Click OK to continue viewing this page,\n"
  txt+="or Cancel to return to the home page.\n\n"
  if(!confirm(txt))
    {
    document.location.href="http://www.w3schools.com/"
    }
  }
}
</script>
</head>

<body>
<input type="button" value="View message" onclick="message()" />
</body>

</html>

에러가 발생할 부분을 try 블럭으로 감싸고 catch에서 사용자에게 보여줄 에러 메시지를 작성하고 confirm()으로 확인창을 띄워서 사용자가 Cancle을 클릭하면 다른 페이지로 이동하도록 한다.