⊗jsSpExcInr 137 of 294 menu

Introducere în situațiile excepționale în JavaScript

Acum vom analiza situațiile excepționale în JavaScript. Pentru început, voi face o introducere, care va include exemple de situații excepționale în general pentru orice limbaj de programare, iar apoi vom vedea cum stau lucrurile în JavaScript.

Când ne scriem programele, implicit presupunem că toate mecanismele software și hardware pe care le folosim vor funcționa corect.

Cu toate acestea, acest lucru nu este întotdeauna adevărat. La transmiterea datelor prin rețea, conexiunea se întrerupe și datele ajung la noi într-o formă incorectă sau nu ajung deloc. La scrierea unui fișier, se dovedește că spațiul alocat pe hard disk s-a epuizat, iar fișierul nu poate fi scris. La citirea unui fișier, se dovedește că un astfel de fișier nu există și nu avem de unde citi. La tipărirea datelor pe imprimantă, se întrerupe cablu care leagă imprimanta de computer.

Toate situațiile descrise au o esență comună: apare o defecțiune, care duce la imposibilitatea sau lipsa de sens a finalizării operațiunii planificate.

Există, de asemenea, situații în care apare o eroare, care nu este o defecțiune. De exemplu, îl întrebați pe utilizator adresa de email, și el introduce adresa de email într-un format incorect. Este clar că programul nostru nu poate continua să proceseze adresa de email, deoarece aceasta nu este corectă. Dar, cu toate acestea, aceasta nu este o situație excepțională. Programul nostru poate remedia singur situația: va afișa un mesaj de eroare și utilizatorul își va repeta introducerea.

De fapt, diferența dintre defecțiune și non-defecțiune este foarte neclară. Un eveniment pe care un program îl poate interpreta ca o situație excepțională, alt program îl poate interpreta ca o eroare cu care se poate descurca.

Criteriul aici este următorul: dacă la apariția unei probleme programul dvs. poate continua să execute ceea ce este destinat să facă, atunci aceasta nu este o situație excepțională, iar dacă nu poate - atunci da, aceasta este o excepție.

De exemplu, avem un program care trebuie să ceară adresa de email a utilizatorului. Dacă utilizatorul a introdus adresa de email într-un format incorect - aceasta nu este o defecțiune. Aceasta este o problemă așteptată și programul nostru va întreba utilizatorul adresa de email de atâtea ori, până când o va introduce corect.

Să presupunem că programul nostru, care cere adresa de email, trebuie de asemenea să trimită această adresă corectă prin internet. În acest moment, se dovedește că internetul nu funcționează. Aceasta este deja o problemă: programul nu va putea trimite datele prin internet în niciun fel, dacă internetul nu funcționează. Programul, totuși, își poate continua execuția: poate afișa informații despre problemă, poate repeta încercarea de trimitere după un anumit timp și așa mai departe. Dar aceste acțiuni nu sunt chiar ceea ce programul a fost destinat să facă, deoarece acțiunea principală - trimiterea emailului, programul nu o va putea face.

Foarte des, faptul dacă o situație este excepțională sau nu, depinde de limbajul de programare. În multe limbaje, dacă de exemplu a avut loc o împărțire la zero - aceasta este considerată o excepție (deoarece nu se poate împărți la zero), dar în JavaScript - nu este considerată (în JavaScript se poate împărți la zero).

mskaswhysv