English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

JavaScript try...catch 문

 JavaScript 문장과 변수 선언

try ... catch문장은 시도할 문장 블록을 표시하고, 예외(오류)가 발생할 때의 응답을 지정합니다.

try 문은 하나 이상의 문장을 포함하는 try 블록으로 구성됩니다. {}는 항상 단일 문장에 사용해야 합니다.

catch 문이나 finally 문이 적어도 하나는 존재해야 합니다. 이는 try 문에 대해 세 가지 형식을 제공합니다:

  • try...catch

  • try...finally

  • try...catch...finally

사용try문장은 실행 중에 오류를 테스트할 코드 블록을 정의할 수 있습니다.

catch문장은 try 블록에서 오류가 발생할 때 실행할 코드 블록을 정의할 수 있습니다.

finally선언에서, try와 catch 뒤에, 어떤 결과이든 상관없이 실행할 수 있는 코드.

주의: catch와 finally 문은 선택사항이지만, try 문을 사용할 때는 반드시 그 중 하나를 사용해야 합니다. 동시에 사용할 수 없다면.

사용throw문장이 사용자 정의 오류(예외를 터트리는)를 생성합니다. 만약throwtry와 catch를 함께 사용하면 프로그램 흐름을 지정하고 사용자 정의 오류 메시지를 생성할 수 있습니다. (다음의 '더 많은 예제'를 참조하세요).

우리의JavaScript 예외 튜토리얼에서예외에 대해 더 많은 정보를 알아보세요.

문법:

try {
   //try_statements-시도할 문장
}
catch(err) {
   //catch_statements-에러 처리 문장
}
finally {
  //finally_statements-try / 무엇이든 catch 결과가 어떻든 실행되는 문장
}
try {
   aaalert("Hello world");
}
catch(err) {
   document.getElementById("result").innerHTML = err;
}
테스트를 해 보세요‹/›

브라우저 호환성

모든 브라우저가 완전히 지원하는 try ... catch 문:

문장
try...catch

파라미터 값

파라미터설명
try_statements실행할 문장.
err관련 catch 문의 예외 객체의 식별자를持有합니다. 참조:에러 객체
catch_statements( 선택 사항 ) try 블록에서 예외가 발생할 때 실행되는 문장. 오류가 발생하지 않으면 이 코드 블록은 결코 실행되지 않습니다.
finally_statements( 선택 사항 ) try 문이 완료된 후에 실행되는 문장. 예외가 발생했든지, 예외가 잡혔든지 관계없이 이 문장들은 모두 실행됩니다.

기술 세부 사항

JavaScript 버전:ECMAScript 3

더 많은 예제

다음은finally선언에서는 코드를 실행할 수 있으며, try와 catch 후에도 결과는 어떤 경우에도 실행됩니다:

try {
   aaalert("Hello world");
}
catch(err) {
   document.getElementById("result").innerHTML = err;
}
finally {
   document.getElementById("result").innerHTML += "<h3>Finally 문장이 실행되었습니다</h3>";
}
테스트를 해 보세요‹/›

catchfinally문장은 선택사항입니다만, try 문을 사용할 때는 중 하나를 사용해야 합니다(둘다 동시에 사용할 수 없습니다):

try {
   aaalert("Hello world");
}
finally {
   document.getElementById("result").innerHTML = "최종 실행 문장";
}
테스트를 해 보세요‹/›

사용throw문장이 하나의 사용자 정의 오류를 생성합니다(예외 발생):

function getRectArea(width, height) {
   if (isNaN(width) || isNaN(height)) {
  throw "파라미터는 숫자가 아닙니다!";
   }
}
try {
   getRectArea(5, 'Z');
}
catch(err) {
   document.getElementById('para').innerHTML = err;
}
테스트를 해 보세요‹/›

입력을 확인하고, 값이 잘못되면 예외를 발생시킵니다(err).catch문장에서 예외를 잡아서 사용자 정의 오류 메시지를 표시합니다:

var x = document.querySelector("input").value;
try {
   if(x == "")    throw "is Empty";
   )    throw "Not a Number";
   if(x > 10)    throw "too High";
   if(x < 5)throw "too Low";
}
catch(err) {
   document.getElementById("para").innerHTML = "Input " + err;
}
테스트를 해 보세요‹/›

다른 것도 확인해 보세요

JavaScript 강의:JavaScript 예외

JavaScript 참조:JavaScript 오류 객체

JavaScript 참조:JavaScript throw 문장

 JavaScript 문장과 변수 선언