try-catch
형태 : try 블록 catch(식별자) 블록
try 블록 finally 블록
try 블록 catch (식별자) 블록 finally 블록
try문에서 예외 발생을 인식.
예외가 발생하면 catch 블록 실행
var value;
try {
value = ball;
} catch(error) {
log("catch 실행")
}; //value의 값을 정해주지 않아 try 블록에서 에러가 발생하고 catch문으로 내려옴. catch 실행
finally 블록은 예외 발생과 관계없이 실행.
var sports;
try { sports = ball;
} catch(error){
log("catch 실행");
} finally {
log("finally 실행");
}; //catch 실행 finally 실행
throw
형태 : throw 표현식;
명시적으로 예외를 발생시킴.
예외가 발생하면 catch실행.
try {
throw "예외 발생시킴";
var sports = "스포츠";
} catch(error) {
log(error);
log(sports);
}; // "throw"표현식에 문자열을 작성한 형태. throw를 만나면 에러가 발생해 catch 블록 실행됨. throw 아래의 코드는 실행하지 않음. catch(error)의 error에 throw표현식의 문자열이 설정됨. 예외 발생시킴 undefined
try {
throw {
msg : "예외 발생시킴"
bigo : "임의의 이름 사용
};
}; catch(error) {
log(error.msg);
log(error.bigo);
}; // 예외 발생시킴 임의의 이름사용
try {
throw new Error("예외 발생시킴");
}; catch(error){
log(error.message);
}; // 예외 발생시킴
strict모드
형태 : "use strict"
엄격하게 JS 문법 사용의 선언
코딩실수를 예방하기 위해 사용.
작성한 위치부터 적용.
"use strict"
try {
book = "변수 선언하지 않음";
log(book);
} catch(error) {
log(error.message);
}; // 'var'를 생략했기 때문에 에러 발생.
'javascript' 카테고리의 다른 글
| object (0) | 2021.09.09 |
|---|---|
| 함수, return, 주석 (0) | 2021.09.08 |
| if, debugger, while, do-while, for, break, continue, switch (0) | 2021.09.06 |
| 문장 (0) | 2021.09.05 |
| 콤마, 그룹핑, 논리 연산자, 조건 연산자, 연산자 우선순위 (0) | 2021.09.05 |