throw 문
업데이트: 2007년 11월
try...catch...finally 문에서 처리할 수 있는 오류 조건을 만듭니다.
throw [exception]
인수
- exception
선택적 요소. 임의의 식입니다.
설명
throw 문은 catch 블록 내부에 있을 경우에만 인수 없이 사용할 수 있습니다. 이 경우 throw 문은 자신을 포함하는 catch 문이 catch한 오류를 다시 throw합니다. 인수가 제공되면 throw 문은 exception 값을 throw합니다.
예제
다음 예제에서는 전달된 값을 기준으로 오류를 throw한 후try...catch...finally 문 계층 구조에서 오류를 처리하는 방법을 보여 줍니다.
function TryCatchDemo(x){
try {
try {
if (x == 0) // Evalute argument.
throw "x equals zero"; // Throw an error.
else
throw "x does not equal zero"; // Throw a different error.
}
catch(e) { // Handle "x=0" errors here.
if (e == "x equals zero") // Check for a handled error.
return(e + " handled locally."); // Return error message.
else // Can't handle error here.
throw e; // Rethrow the error for next
} // error handler.
}
catch(e) { // Handle other errors here.
return(e + " error handled higher up."); // Return error message.
}
}
print(TryCatchDemo(0)+ "\n");
print(TryCatchDemo(1));