오류 처리는 예상치 못한 문제로 인해 애플리케이션이 중단되지 않고 원활하게 처리되도록 보장하는 JavaScript 프로그래밍의 중요한 측면입니다. JavaScript는 런타임 오류를 처리하기 위해 try, catch 및 finally 블록을 제공합니다.
기본 구문은 다음과 같습니다.
try { // Code that may throw an error } catch (error) { // Code to handle the error } finally { // Code that runs regardless of success or failure }
try 블록은 오류가 발생할 수 있는 코드를 실행하는 데 사용됩니다. 오류가 발생하면 제어가 catch 블록으로 전달됩니다.
try { const result = 10 / 0; console.log(result); // Infinity nonExistentFunction(); // This will throw an error } catch (error) { console.error("An error occurred:", error.message); }
finally 블록은 선택 사항이며 오류 발생 여부에 관계없이 try 및 catch 블록 다음에 실행됩니다.
try { console.log("Trying..."); throw new Error("Something went wrong!"); } catch (error) { console.error("Caught an error:", error.message); } finally { console.log("Execution completed."); } // Output: // Trying... // Caught an error: Something went wrong! // Execution completed.
try-catch 블록을 중첩하여 다양한 수준에서 오류를 처리할 수 있습니다.
try { try { throw new Error("Inner error"); } catch (innerError) { console.error("Caught inner error:", innerError.message); throw new Error("Outer error"); } } catch (outerError) { console.error("Caught outer error:", outerError.message); }
throw 키워드를 사용하여 사용자 정의 오류를 생성할 수 있습니다.
function divide(a, b) { if (b === 0) { throw new Error("Division by zero is not allowed."); } return a / b; } try { console.log(divide(10, 0)); } catch (error) { console.error("Error:", error.message); }
오류가 발생하면 Error 객체가 catch 블록으로 전달됩니다.
try { undefinedFunction(); } catch (error) { console.log("Name:", error.name); // ReferenceError console.log("Message:", error.message); // undefinedFunction is not defined console.log("Stack:", error.stack); // Stack trace }
try { // Code } catch (error) { if (error instanceof TypeError) { console.error("Type Error:", error.message); } else { console.error("Other Error:", error.message); } }
try { const data = fetchData(); } catch (error) { console.error("Failed to fetch data. Using defaults."); const data = defaultData; }
빈 캐치 블록 피하기:
마침내 정리에 사용:
try { // Code that may throw an error } catch (error) { // Code to handle the error } finally { // Code that runs regardless of success or failure }
효과적인 오류 처리를 통해 애플리케이션이 충돌하지 않고 예상치 못한 상황을 처리할 수 있으므로 더 나은 사용자 경험과 유지 관리가 용이한 코드를 얻을 수 있습니다.
안녕하세요. 저는 Abhay Singh Kathayat입니다!
저는 프론트엔드와 백엔드 기술 모두에 대한 전문 지식을 갖춘 풀스택 개발자입니다. 저는 효율적이고 확장 가능하며 사용자 친화적인 애플리케이션을 구축하기 위해 다양한 프로그래밍 언어와 프레임워크를 사용하여 작업합니다.
제 비즈니스 이메일(kaashshorts28@gmail.com)로 언제든지 연락주세요.
위 내용은 JavaScript의 오류 처리 마스터하기: 시도하고, 포착하고, 마지막으로의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!