전역 이벤트 메커니즘을 사용한 효과적인 JavaScript 오류 처리
정의되지 않은 함수 오류를 전역적으로 처리하려면 JavaScript의 전역 이벤트 메커니즘을 활용하여 포착되지 않은 모든 것을 효과적으로 캡처합니다. 예외.
window.onerror 이벤트 처리
다음과 같이 window.onerror 이벤트에 대한 이벤트 핸들러를 구현합니다.
<code class="javascript">window.onerror = function(msg, url, line, col, error) {
// Message, URL, line and column details
// Note that col & error are new to HTML 5 and may vary across browsers.
// Customize the error display or perform error reporting using AJAX, for instance:
var xhr = new XMLHttpRequest();
xhr.open('POST', '/ajax/log_javascript_error');
xhr.send(JSON.stringify({ msg, url, line, col, error }));
};</code>
로그인 후 복사
< ;h2>window.onerror는 언제 트리거됩니까?
이 이벤트는 다음과 같은 경우에 발생합니다:
-
잡히지 않은 예외: 메시지 던지기, 정의되지 않은 함수 호출 , 또는 교차 원본 iframe 콘텐츠 창/문서 오류.
-
컴파일 오류: 일치하지 않는 대괄호, 세미콜론 누락 또는 비스크립트 인수 컴파일 시도 등의 구문 오류
브라우저 지원
- Chrome 13
- Firefox 6.0
- Internet Explorer 5.5
- Opera 11.60
- Safari 5.1
추가 리소스
- Mozilla 개발자 네트워크: [window.onerror](https:/ /developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror)
- MSDN: [웹 페이지 오류 처리 및 방지 2부: 런타임 오류](https://docs .microsoft.com/en-us/previous-versions/ms536764(v=vs.85))
- [기본으로 돌아가기 – JavaScript 오류 발생 이벤트](https://www.webdesignerdepot.com/2014/ 10/back-to-basics-javascript-onerror-event/)
- [DEV.OPERA: window.onerror를 사용한 향상된 오류 처리](https://dev.opera.com/articles/better-error -handling-with-window-onerror/)
- [Window onError 이벤트](https://www.html5rocks.com/en/tutorials/developertools/onerror/)
- [사용 JavaScript 오류를 억제하는 onerror 이벤트](https://stackoverflow.com/a/11712511)
- [SO: window.onerror가 Firefox에서 실행되지 않음](https://stackoverflow.com/q/5472601/ 123152)
위 내용은 `window.onerror` 이벤트를 사용하여 JavaScript 오류를 전역적으로 효과적으로 처리하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!