본문 바로가기

JavaScript

37. 예외처리

예외처리

- 오류가 발생되었을 때 별도의 처리를 하거나 무시하고 프로그램을 실행하는 것

- 오류가 발생될 것으로 예상되는 문장을 try 블록에 코딩하고, try 블록에 코딩된 내용을 실행하다가 오류가 발생하면 더이상 try 블록의 내용을 실행하지 않고 해당 오류의 catch블록에 코딩된 내용을 실행

예외처리 문법
try{
    예외가 발생할 것으로 예상되는 문장;
    ...
    ...
}
catch(error 객체){
    예외가 발생했을 때 처리할 문장;
    ...
    ...
}
finally{
    예외와 관계없이 무조건 실행할 문장;
}
예외처리 예제 1
function readFile(path) {
    // throw new Error를 통해 에러를 강제로 발생 시킴
    throw new Error('파일 경로를 찾을 수 없음.');
    return '파일객체';
}

function processFile(path) {
    let content;
    try{
        content = readFile(path);
    }
    catch(error){
        console.log(error);
        content = "기본내용";
    }
    finally{
        console.log("에러의 발생 여부와 관계없이 실행할 문장을 작성");
    }
    const result = "결과: " + content;
    return result
}

const result = processFile('경로');
console.log(result);

재귀 함수에서 예외처리
function func1() {
    console.log("func1이 호출되었어요!");
    // throw new Error를 통해 에러를 강제로 발생시킴
    throw new Error('에러 발생!');
}

function func2() {
    try{
        func1();
    }
    catch(error){
        console.log("예외처리 완료!");
        throw error;
    }
}
function func3() {
    try{
        func2();
    }
    catch(error){
        console.log("여기에서 예외처리 또 완료!");
    }
}
func3();
console.log("프로그램이 정상적으로 종료되었습니다!");

'JavaScript' 카테고리의 다른 글

39. 옵셔널 체이닝(Opthional Chaining)  (0) 2023.04.14
38. 프로미스(Promise)  (0) 2023.04.13
36. 맵(map)  (0) 2023.04.13
35. 세트(Set)  (0) 2023.04.13
34. 스프레드(Spread)  (0) 2023.04.12