Java 언어와 마찬가지로 JavaScript는 던지기 진술을 통해 예외를 던질 수 있습니다. Java Language와 달리 JavaScript는 Throw Object를 던질뿐만 아니라 Throw 문을 통해 모든 유형의 값을 던질 수 있습니다.
코드 사본은 다음과 같습니다.
// 오류 객체를 던집니다.
노력하다{
새 오류를 던지십시오 ( "오류 객체의 메시지");
} catch (e) {
console.log (e); // 오류 : 오류 객체의 메시지
}
노력하다{
"원시 메시지"를 던지십시오.
} catch (메시지) {
console.log (메시지); // aw 메시지
console.log (typeof message); // string
}
노력하다{
던지기 42;
} catch (코드) {
Console.log (코드); // 42
Console.log (Typeof Code); // 번호
}
Java Language와 마찬가지로 예외가 Catch 문에 의해 잡히지 않으면 예외는 결국 사용자에게 던져집니다.
코드 사본은 다음과 같습니다.
노력하다{
// 새 오류를 던지십시오 ( "테스트 오류"); // 오류가 발생합니다. 오류 : 테스트 오류
} 마지막으로{
}
노력하다{
42; // 오류가 발생합니다. 오류 : 42
} 마지막으로{
}
캐치 던지기 예외를 위해 JavaScript는 Try/Catch/Think 문도 사용합니다. 사용 규칙은 다음과 같습니다. 시도가 필요하고, 잡기가 필요하며, 마지막으로 선택 사항이지만 적어도 하나의 어획량이어야하며 마지막으로 나타나야합니다.
Catch 문서에서 파라미터 e (또는 기타 법적 변수 이름)를 정의하여 던진 특이 치를 저장할 수 있습니다. Catch 문 에서이 매개 변수는 로컬 변수로 사용할 수 있습니다. JavaScript의 다른 변수 사용과 달리 Catch 문의 매개 변수 변수는 Catch 문 내부에서만 유효합니다 (이 변수의 범위는 Catch 문으로 제한됨).
마지막으로 문장의 경우, 시도에 예외가 발생했는지 여부에 관계없이 최종적 코드가 실행됩니다. 세부 사항은 다음과 같습니다.
1. 시도에서는 예외가 발생하지 않습니다. 시도 문이 실행되면 코드가 최종적으로 실행됩니다.
2. 시도에서는 예외가 발생하지 않지만 브레이크 실행, 계속 또는 반환 명령문으로 인해 시도 코드가 종료되면 최종적으로 코드가 실행됩니다.
3. 시도에서 예외가 발생합니다. Catch 문에 의해 예외가 처리 된 후에는 코드가 최종적으로 실행됩니다.
4. 시도에서 예외가 발생하지만 캐치 문이 없기 때문에 예외가 계속 발생해야 할 때 코드가 최종적으로 실행됩니다. Catch 문이 누락 된 경우 JavaScript가 먼저 코드를 최종적으로 실행 한 다음 계속해서 예외를 던지게된다는 점에 주목할 가치가 있습니다.
마지막으로 코드에서, break, 계속 또는 반환 명령문이 나타나면, JavaScript는이 문장을 직접 실행하고 시도 코드에 존재할 수있는 중단, 계속 또는 반환 문을 무시합니다. Catch 문이 없어도보고해야 할 예외가 발생하더라도 JS는 예외보고 정보를 폐기하고 최종 코드에서 중단, 계속 또는 반환 문을 계속 실행합니다. 마찬가지로, 마지막 코드에 예외가 발생하면 JavaScript는 모든 브레이크를 폐기하고 Try Code에서 문장을 계속하거나 반환하며 가능한 예외보고 동작을 폐기하며 마지막 코드에서만 예외 만 제외합니다.