Javascript
[JAVASCRIPT] 선언되지 않은 변수 처리하기(try ~ catch)
ZIAHO
2023. 5. 1. 17:15
여러개의 jsp에서 공통으로 사용하는 js파일이 있는 경우(ex : editor)
A.jsp에 temp1이라는 변수가 선언되어 있지만 B.jsp에서는 선언되어있지 않을때,
공통 js 에서 아래와 같이 처리하려고 하면 B에서 undefined 가 발생한다.
if(temp == 'Y') {
var tempChk = true;
}
temp라는 값을 찾지 못하기 때문이다.
다음과 같은 상황에서 B에서도 에러가 발생하지 않기 위해서는 try ~ catch를 사용하면 된다.
try {
if(temp == 'Y') {
var tempChk = true;
} else {
var tempChk = false;
}
} catch(exception) {
var tempChk = false;
}
위와 같이 처리하면, A에서는 temp가 존재하기 때문에 temp의 값이 Y인지를 확인하여 tempChk의 값을 정하게 되고,
B에서는 temp의 값을 찾을 수 없기 때문에 catch문을 통하여 tempChk의 값을 false로 처리하기 때문에
이후 로직에서 tempChk의 값을 활용하더라도 에러가 발생하지 않는다.