⊗jsSpExcInr 137 of 294 menu

JavaScript 예외 상황 소개

지금부터 JavaScript의 예외 상황을 살펴보겠습니다. 우선, 모든 프로그래밍 언어에 대한 일반적인 예외 상황의 예를 포함한 소개를 한 다음, JavaScript에서의 상황을 살펴보겠습니다.

우리가 프로그램을 작성할 때, 우리가 사용하는 모든 소프트웨어적, 기술적 메커니즘이 올바르게 작동할 것이라고 암묵적으로 가정합니다.

그러나 항상 그런 것은 아닙니다. 네트워크로 데이터를 전송할 때 연결이 끊어져 데이터가 잘못된 형태로 오거나, 아예 오지 않을 수 있습니다. 파일을 쓸 때 할당된 하드 디스크 공간이 부족해 파일을 쓸 수 없을 수 있습니다. 파일을 읽을 때 해당 파일이 존재하지 않아 읽을 수 없을 수 있습니다. 프린터로 데이터를 인쇄할 때 프린터와 컴퓨터를 연결하는 케이블이 끊어질 수 있습니다.

설명된 모든 상황은 공통된 본질을 가집니다: 계획된 작업의 완료를 불가능하게 하거나 무의미하게 만드는 어떤 장애가 발생합니다.

장애가 아닌 어떤 오류가 발생하는 상황도 있습니다. 예를 들어, 사용자에게 이메일을 묻고 사용자가 잘못된 형식의 이메일을 입력하는 경우입니다. 이메일이 올바르지 않기 때문에 우리 프로그램이 이메일 처리를 계속할 수 없다는 것은 분명합니다. 하지만 그럼에도 불구하고 이것은 예외 상황이 아닙니다. 우리 프로그램은 스스로 상황을 해결할 수 있습니다: 오류 메시지를 출력하고 사용자가 입력을 반복하도록 할 수 있습니다.

사실 장애와 비장애의 구분은 매우 모호합니다. 한 프로그램이 예외 상황으로 해석할 수 있는 사건을 다른 프로그램은 처리할 수 있는 어떤 오류로 해석할 수 있습니다.

여기서 기준은 다음과 같습니다: 문제가 발생했을 때 프로그램이 의도된 목적을 계속 수행할 수 있다면, 그것은 예외 상황이 아니며, 수행할 수 없다면 그것은 예외입니다.

예를 들어, 사용자의 이메일을 묻는 프로그램이 있다고 가정해 보겠습니다. 사용자가 잘못된 형식으로 이메일을 입력한 경우 - 이것은 장애가 아닙니다. 이것은 예상되는 문제이며 우리 프로그램은 사용자가 올바르게 입력할 때까지 이메일을 여러 번 묻습니다.

이메일을 묻는 이 프로그램이 올바른 이메일을 인터넷을 통해 전송해야 한다고 가정해 보겠습니다. 그런데 인터넷이 작동하지 않는 것으로 밝혀졌습니다. 이것이 바로 문제입니다: 인터넷이 작동하지 않으면 프로그램이 인터넷을 통해 데이터를 전송할 방법이 없습니다. 그럼에도 불구하고 프로그램은 실행을 계속할 수 있습니다: 문제에 대한 정보를 출력하고, 일정 시간 후 전송 시도를 반복하는 등의 작업을 할 수 있습니다. 그러나 이러한 작업은 프로그램의 주요 작업인 이메일 전송을 할 수 없기 때문에 프로그램이 의도된 목적과는 다소 다릅니다.

예외 상황인지 아닌지는 매우 자주 프로그래밍 언어에 따라 달라집니다. 많은 언어에서 0으로 나누기가 발생하면 예외로 간주됩니다(0으로 나눌 수 없기 때문에). 그러나 JavaScript에서는 그렇지 않습니다(JavaScript에서는 0으로 나눌 수 있습니다).

한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부