최신 웹 개발 튜토리얼
 

JavaScript오류 - 던져 잡으려고


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 블록이 에러를 포착하고이를 처리하기위한 코드를 실행한다.


자바 스크립트 trycatch

try 문은 당신이 그것을 실행되는 동안 오류를 테스트 할 코드 블록을 정의 할 수 있습니다.

catch 오류가 try 블록에서 발생하는 경우 문, 당신은 코드 블록이 실행되도록 정의 할 수 있습니다.

자바 스크립트 문은 trycatch 쌍으로 :

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 와 함께 trycatch , 당신은 프로그램의 흐름을 제어 및 사용자 지정 오류 메시지를 생성 할 수 있습니다.


입력 유효성 검사 예

이 예는 입력을 검사합니다. 값이 잘못된 경우, 예외가 (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 문을 사용하면 후, 코드를 실행할 수 있습니다 trycatch 결과에 관계없이 :

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 = "";
    }
}
»그것을 자신을 시도