메뉴 건너뛰기

2019.01.16 18:18

에러처리

조회 수 1066 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

* onerror 이벤트

예외를 처리하는 다른 방법 중에 하나인 onerror 이벤트를 살펴보겠다.
onerror 이벤트는 페이지에 스크립트 에러가 발생할 때 마다 호출 된다.
onerror 이벤트를 사용하기 위해서는, 반드시 에러를 다룰 함수를  만들어야한다. 
그런 뒤 onerror 이벤트 핸들러로 해당 함수를 호출하면 된다.

이 때 불려지는 함수는 세 개의 인자를 가지게 된다. 
- msg(에러 메시지)
- url(에러를 발생시킨 페이지의 url) 
- line(몇 번째 행에서 에러가 발생했는지)

 

[문법]
onerror=handleErr
function handleErr(msg,url,l)
{
  //Handle the error here
  return true or false
}

 

onerror 에 의해 반환되는 값으로 브라우저에 표준 에러 메시지를 출력할지 말지 결정할 수 있다. 
만약에 false를 반환하면 브라우저는 자바스크립트 콘솔에 표준 에러 메시지를 출력합니다. 
하지만 만약 true를 반환한다면 브라우저는 표준 에러 메시지를 출력하지 않습니다.

 

[예제]
<html>
<head>
<script type="text/javascript">
onerror=handleErr
var txt=""

function handleErr(msg,url,l)
{
  txt="There was an error on this page.\n\n"
  txt+="Error: " + msg + "\n"
  txt+="URL: " + url + "\n"
  txt+="Line: " + l + "\n\n"
  txt+="Click OK to continue.\n\n"
  
  alert(txt)
  
  return true
}

ddd

function message()
{
  adddlert("Welcome guest!") // 에러...
}
</script>
</head>

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

 

에러가 발생하면 onerror 이벤트가 발생하고 거기에 정해준 콜백 메소드가 실행됩니다. 
이 때 메시지를 직접 작성한 뒤 표준 에러 메시지를 출력하지 않고 handleErr() 함수에서 작성한 메시지를 보여줍니다.

 

[에러 보고로 사용자를 괴롭히지 않기]
window.onerror = function(){ return true; }

 

후기
위 예제를 이용하여 자바스크립트 에외처리를 하면 도움이 될것 같다.


  1. Javascript - 입력받은 숫자를 순서대로 홀짝 별로 배열에 삽입하기

    Date2021.03.09 Views302
    Read More
  2. 자바스크립트에서 이벤트 중단 하는 방법

    Date2021.03.25 Views321
    Read More
  3. javascript - vanillaJS로 체크박스(checkbox) 제어하기

    Date2021.03.09 Views498
    Read More
  4. Javascript - Calendar 달력 생성하고 제어하기

    Date2021.03.09 Views513
    Read More
  5. HTML, Javscript - 선택한 색상으로 배경색 바꾸기(pallet 만들기)

    Date2021.03.09 Views717
    Read More
  6. Javascript - 유효성 체크(이메일 정규식, IP 정규식, 비밀번호 등)

    Date2021.03.09 Views729
    Read More
  7. DTREE 트리구조 만들기

    Date2021.03.26 Views868
    Read More
  8. Javascript - Free SVG 한국맵 제어 처리

    Date2021.03.09 Views873
    Read More
  9. 팝업창 맨위로 올라오게 하기

    Date2021.03.26 Views874
    Read More
  10. ajax 사용시 Internal Sever Error 뜨는 경우

    Date2021.03.26 Views965
    Read More
  11. 배열과 Array객체

    Date2019.01.16 Views1051
    Read More
  12. 에러처리

    Date2019.01.16 Views1066
    Read More
  13. Javascript - 사업자 등록번호 유효성 체크

    Date2021.03.09 Views1089
    Read More
  14. input 태그에서 name과 id의 차이

    Date2019.01.16 Views1104
    Read More
  15. 기간 설정용 달력 팁앤노하우

    Date2019.01.16 Views1137
    Read More
  16. 한글 또는 영문만이 존재하는지 체크

    Date2019.01.16 Views1163
    Read More
  17. 풍선도움말

    Date2019.01.16 Views1167
    Read More
  18. 랜덤(Random) / 난수 만들기

    Date2019.01.16 Views1179
    Read More
  19. 한글 짜르기

    Date2019.01.16 Views1179
    Read More
  20. 두 날짜 사이 토일요일 개수 구하기

    Date2019.01.16 Views1252
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved