>웹 프론트엔드 >JS 튜토리얼 >javascript 내결함성 처리 코드(js 오류 보호)_javascript 기술

javascript 내결함성 처리 코드(js 오류 보호)_javascript 기술

PHP中文网
PHP中文网원래의
2016-05-16 19:04:001004검색

가끔 웹을 탐색할 때 IE 브라우저의 왼쪽 하단에 항상 노란색 오류 표시가 있는 것을 발견할 때가 있습니다. 가끔 오류가 바로 나타나서 페이지 탐색을 계속할 수 없는 경우가 있습니다. 웹사이트의 공식적이고 권위 있는 개발.

이러한 외국계 은행 페이지 오류로 인해 많은 이용자들이 손실을 입었고, 은행 온라인 뱅킹 이용을 두려워하여 큰 손실을 입게 되었습니다.

그래서 사용자 경험이나 회사의 강점 측면에서 발생해서는 안되는 실수, 사용에 영향을 미치지 않고 사용자에게 불쾌감을 주지 않더라도 스크립트 하우스는 항상 모든 사람을 위해 더 나은 코드를 개선하기 위해 최선을 다해 왔습니다. , 그래서 여기서는 일반적으로 사용되는 코드와 사용 방법을 정리하겠습니다. 앞으로 모두가 우리를 더욱 많이 지원하고 함께 발전할 수 있기를 바랍니다.

첫 번째 유형: Script House 자체도

코드는 다음과 같습니다.

<SCRIPT language=javascript> 
<!-- 
window.onerror=function(){return true;} 
// --> 
</SCRIPT>


방법 사용 : 오류 웹 페이지의 헤드 영역에 위 코드를 추가하면 됩니다.

두 번째 유형: 일부 스크립트 오류로 인해 가끔 열람할 수 없는 페이지를 대상으로 합니다. 이 문제는 매우 심각하여 대규모 사용자 손실이 발생하거나 작동이 불가능합니다.
이것은 단순한 스크립트 오류 문제가 아닙니다. 주된 이유는 코드 작성자가 완벽함을 고려하지 않았기 때문입니다. 그러나 실제로 어떻게 수정해야 하는지 알 수 없습니다. 이러한 코드를 사용하세요
try...catch는 코드의 오류를 테스트할 수 있습니다. try 섹션에는 실행해야 하는 코드가 포함되어 있고, catch 섹션에는 오류가 발생할 때 실행되는 코드가 포함되어 있습니다.
구문:

코드는 다음과 같습니다.

try 
{ 
//在此运行代码 
} 
catch(err) 
{ 
//在此处理错误 
}


참고: try...catch는 소문자를 사용합니다. 대문자가 잘못됩니다.
예제 1
다음 예는 원래 사용자가 버튼을 클릭할 때 "Welcome guest!" 메시지를 표시하는 데 사용되었습니다. 그러나 message() 함수의 Alert()가 adddlert()로 잘못 작성되었습니다. 이때 오류가 발생했습니다:

 
<html> 
<head> 
<script type="text/javascript"> 
function message() 
{ 
adddlert("Welcome guest!") 
} 
</script> 
</head> 
<body> 
<input type="button" value="View message" onclick="message()" /> 
</body> 
</html>

오류 발생 시 보다 적절한 조치를 취할 수 있도록 try...catch 문을 추가할 수 있습니다.
다음 예에서는 try...catch 문을 사용하여 스크립트를 다시 수정합니다. 경고()를 실수로 작성했기 때문에 오류가 발생했습니다. 그러나 이번에는 catch 섹션이 오류를 포착하고 준비된 코드 조각으로 처리합니다. 이 코드는 사용자에게 무슨 일이 일어났는지 알리기 위해 사용자 정의 오류 메시지를 표시합니다.

 
<html> 
<head> 
<script type="text/javascript"> 
var txt="" 
function message() 
{ 
try 
{ 
adddlert("Welcome guest!") 
} 
catch(err) 
{ 
txt="此页面存在一个错误。\n\n" 
txt+="错误描述: " + err.description + "\n\n" 
txt+="点击OK继续。\n\n" 
alert(txt) 
} 
} 
</script> 
</head> 
<body> 
<input type="button" value="View message" onclick="message()" /> 
</body> 
</html>



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.