자바스크립트 오류
JavaScript 오류 - throw, try and catch
try 문은 코드 블록에 오류가 있는지 테스트합니다.
catch 문 처리 오류입니다.
문을 던져 사용자 정의 오류를 생성합니다.
JavaScript 오류
JavaScript 엔진이 JavaScript 코드를 실행할 때 다양한 오류가 발생할 수 있습니다.
구문 오류일 수 있습니다. 일반적으로 프로그래머가 만든 코딩 오류나 오타입니다.
철자 오류이거나 언어 기능이 누락되었을 수 있습니다(브라우저 차이로 인해).
서버나 사용자의 잘못된 출력으로 인해 오류가 발생할 수 있습니다.
물론, 예측할 수 없는 다른 여러 요인으로 인해 발생할 수도 있습니다.
JavaScript에서 오류 발생
오류가 발생하거나 문제가 발생하면 일반적으로 JavaScript 엔진이 중지되고 오류 메시지가 생성됩니다.
이 상황을 설명하는 기술 용어는 다음과 같습니다. JavaScript에서 오류가 발생합니다. JavaScript try 및 catch 문을 사용하면 실행 시 오류가 테스트되는 코드 블록을 정의할 수 있습니다.
catch 문을 사용하면 try 코드 블록에서 오류가 발생할 때 실행할 코드 블록을 정의할 수 있습니다.
JavaScript 문
try 및 catch 가 쌍으로 나타납니다.
Syntax
try { //여기서 코드 실행
} catch(err) {//여기서 오류 처리}
Instances
아래 예에서는 우리 try 블록의 코드에 의도적으로 오타를 썼습니다. Alert는 의도적으로 addlert
로 작성되었습니다. catch 블록은 try 블록에서 오류를 포착하고 코드를 실행하여 이를 처리합니다.<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script> var txt=""; function message(){ try { adddlert("Welcome guest!"); } catch(err) { txt="本页有一个错误。\n\n"; txt+="错误描述:" + err.message + "\n\n"; txt+="点击确定继续。\n\n"; alert(txt); } } </script> </head> <body> <input type="button" value="查看消息" onclick="message()" /> </body> </html>
프로그램을 실행하여 시험해 보세요
Throw 문throw 문을 사용하면 사용자 정의 오류를 만들 수 있습니다.
올바른 기술 용어는 예외 생성 또는 발생입니다.
try 및 catch와 함께 throw를 사용하면 프로그램 흐름을 제어하고 사용자 정의 오류 메시지를 생성할 수 있습니다.
Syntax
throw 예외
예외는 JavaScript 문자열, 숫자, 논리값 또는 개체일 수 있습니다.
Example
이 예제는 입력 변수의 값을 감지합니다. 값이 틀리면 예외(오류)가 발생합니다. catch는 이 오류를 포착하고 사용자 정의 오류 메시지를 표시합니다.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script> function myFunction(){ try{ var x=document.getElementById("demo").value; if(x=="") throw "值为空"; if(isNaN(x)) throw "不是数字"; if(x>10) throw "太大"; if(x<5) throw "太小"; } catch(err){ var y=document.getElementById("mess"); y.innerHTML="错误:" + err + "。"; } } </script> </head> <body> <h1>我的第一个 JavaScript</h1> <p>请输出一个 5 到 10 之间的数字:</p> <input id="demo" type="text"> <button type="button" onclick="myFunction()">测试输入</button> <p id="mess"></p> </body> </html>
프로그램을 실행하여 시도해 보세요
참고 getElementById 함수가 실패하는 경우 위의 예에서도 오류가 발생합니다.