예외 처리
try {
throw new Error('Something bad happened');
}
catch(e) {
console.log(e);
}Error 서브 타입
RangeError
// 너무 많은 수의 인자로 콘솔 호출
console.log.apply(console, new Array(1000000000)); // RangeError: Invalid array lengthReferenceError
'use strict';
console.log(notValidVar); // ReferenceError: notValidVar is not definedSyntaxError
TypeError
URIError
항상 Error 사용
오류를 꼭 throw 할 필요 없음
예외적인 경우
어디서 던졌는지 불확실
부드러운 처리를 어렵게 함
타입 시스템으로 잘 표현 안됨
Last updated