메뉴 건너뛰기

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; }

 

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


List of Articles
번호 제목 날짜 조회 수
207 적용이 간편한 [글목록 인쇄] 등 특정 영역 인쇄하기 팁 2014.02.27 5441
206 자주쓰는 것들 2021.03.26 203
205 자바스크립트에서 이벤트 중단 하는 방법 2021.03.25 321
204 자바스크립트로 네트워크 연결 확인하기 (Navigator onLine Property) file 2015.06.19 6197
203 자바스크립트, javascript, 간단한 파일 확장자 검사후 retur 2014.03.01 5434
202 자바스크립트 이벤트 목록입니다. ( javascript event ) 2015.04.06 5596
201 자바스크립트 영문입력, 숫자만입력, 한글만 입력, 붙여넣기 방지 2015.02.02 10179
200 자바스크립트 아이디 기억하기 기능 구현 (쿠키저장) file 2015.06.19 10924
199 자바스크립트 실행 시간 측정 2016.12.22 8930
198 자바스크립트 소수점 자리수 계산 2014.03.01 6897
197 자바스크립트 변수,함수,객체의 표현 2016.12.22 5369
196 자바스크립트 배열 중복값 다루기 2018.10.27 3898
195 자바스크립트 및 CSS를 이용한 숫자만 입력받기 2016.12.22 6321
194 자바스크립트 모음 2016.12.22 5778
193 자바스크립트 개체 복사 2014.02.27 6573
192 자바스크립트 urlencode(), urldecode(), rawurlencode(), rawurldecode() 2018.10.27 1913
191 자바스크립트 API 문서 2015.06.19 9086
190 자바 스크립트 confirm()함수에서 (확인,취소) -> (예,아니오) file 2014.03.01 10213
189 입력된 폼의 내용 똑같이 복사 file 2014.03.01 6892
188 입력된 글씨수 제어 file 2014.03.01 6700
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved