try 문을 사용하면 오류 코드 블록을 테스트 할 수 있습니다.
catch 문을 사용하면 오류를 처리 할 수 있습니다.
throw 문은 사용자 정의 오류를 만들 수 있습니다.
최종적으로 문을 사용하면 결과에 관계없이, 시도 및 캐치 후, 코드를 실행할 수 있습니다.
오류가 일어날 것이다!
자바 스크립트 코드를 실행하면 다른 오류가 발생할 수 있습니다.
오류는 프로그래머에 의해 만들어진 오류로 인해 잘못 입력 및 기타 예측 불가능한 것들에 오류를 코딩 할 수 있습니다 :
예
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
try {
adddlert("Welcome guest!");
}
catch(err) {
document.getElementById("demo").innerHTML = err.message;
}
</script>
</body>
</html>
»그것을 자신을 시도 위의 예에서 우리는 (try 블록에서) 코드에 오타를 만들었습니다.
catch 블록이 에러를 포착하고이를 처리하기위한 코드를 실행한다.
자바 스크립트 try 및 catch
try 문은 당신이 그것을 실행되는 동안 오류를 테스트 할 코드 블록을 정의 할 수 있습니다.
catch 오류가 try 블록에서 발생하는 경우 문, 당신은 코드 블록이 실행되도록 정의 할 수 있습니다.
자바 스크립트 문은 try 및 catch 쌍으로 :
try {
Block of code to try
}
catch(err) {
Block of code to handle errors
}
자바 스크립트 오류를 발생시킬 수 있습니다
오류가 발생하면, 자바 스크립트가 정상적으로 중지하고 오류 메시지를 생성합니다.
이 기술 용어는 다음과 같습니다 자바 스크립트는 예외를 발생 (또는 슬로우)합니다.
throw 문
throw 문은 사용자 정의 오류를 만들 수 있습니다.
기술적으로 당신은 예외를 발생 (던져) 할 수 있습니다.
예외는 자바 스크립트 문자열, 숫자, 부울 또는 객체가 될 수 있습니다
throw "Too big"; // throw a text
throw 500; // throw a number
당신이 사용하는 경우 throw 와 함께 try 및 catch , 당신은 프로그램의 흐름을 제어 및 사용자 지정 오류 메시지를 생성 할 수 있습니다.
입력 유효성 검사 예
이 예는 입력을 검사합니다. 값이 잘못된 경우, 예외가 (ERR) 슬로우됩니다.
예외는 (ERR) catch 문에 의해 체포되고 사용자 지정 오류 메시지가 표시됩니다 :
<!DOCTYPE html>
<html>
<body>
<p>Please input a number between
5 and 10:</p>
<input id="demo" type="text">
<button type="button"
onclick="myFunction()">Test Input</button>
<p id="message"></p>
<script>
function myFunction() {
var message, x;
message =
document.getElementById("message");
message.innerHTML = "";
x =
document.getElementById("demo").value;
try {
if(x == "") throw "empty";
if(isNaN(x)) throw "not a number";
x = Number(x);
if(x < 5) throw
"too low";
if(x > 10) throw "too
high";
}
catch(err) {
message.innerHTML =
"Input is " + err;
}
}
</script>
</body>
</html>
»그것을 자신을 시도 HTML 유효성 검사
위의 코드는 예입니다.
현대의 브라우저들은 HTML 속성에 정의 된 소정의 검증 규칙을 이용하여 자바 스크립트의 조합을 사용하여 내장 HTML 검증한다 :
<input id="demo" type="number" min="5" max="10" step="1"
이 튜토리얼의 이후 장에서 양식 유효성 검사에 대한 자세한 내용을보실 수 있습니다.
finally 문
finally 문을 사용하면 후, 코드를 실행할 수 있습니다 try 및 catch 결과에 관계없이 :
try {
Block of code to try
}
catch(err) {
Block of code to handle errors
}
finally {
Block of code to be
executed regardless of the try / catch result
}
예
function myFunction() {
var message,
x;
message =
document.getElementById("message");
message.innerHTML = "";
x =
document.getElementById("demo").value;
try {
if(x == "") throw "is empty";
if(isNaN(x))
throw "is not a number";
x = Number(x);
if(x >
10) throw "is too high";
if(x <
5) throw "is too low";
}
catch(err)
{
message.innerHTML = "Error: " +
err + ".";
}
finally {
document.getElementById("demo").value
= "";
}
}
»그것을 자신을 시도