⊗jsSpExcInr 137 of 294 menu

Inleiding tot uitzonderingen in JavaScript

Nu gaan we kijken naar uitzonderingen in JavaScript. Om te beginnen zal ik een inleiding geven, met voorbeelden van uitzonderingen in het algemeen voor alle programmeertalen, en daarna zullen we bespreken hoe het zit in JavaScript.

Wanneer we onze programma's schrijven, gaan we er impliciet vanuit dat alle software-technische mechanismen die we gebruiken, correct zullen werken.

Dit is echter niet altijd het geval. Bij het verzenden van gegevens via het netwerk verbreekt de verbinding en komen de gegevens bij ons in een ongeldige vorm aan, of komen helemaal niet aan. Bij het schrijven van een bestand blijkt dat de toegewezen ruimte op de harde schijf op is, en het bestand kan niet worden weggeschreven. Bij het lezen van een bestand blijkt dat zo'n bestand niet bestaat en we niets hebben om te lezen. Bij het afdrukken van gegevens op een printer verbreekt de kabel die de printer en computer verbindt.

Alle beschreven situaties hebben een gemeenschappelijke essentie: er treedt een storing op, die leidt tot de onmogelijkheid of zinloosheid van het voltooien van de geplande operatie.

Er zijn ook situaties waarin een fout optreedt die geen storing is. Bijvoorbeeld, u vraagt de gebruiker om zijn e-mailadres, en hij voert een e-mailadres in een ongeldige indeling in. Het is duidelijk dat ons programma niet kan doorgaan met het verwerken van het e-mailadres, omdat het niet correct is. Maar niettemin is dit - geen uitzonderlijke situatie. Ons programma kan de situatie zelf herstellen: het toont een foutmelding en de gebruiker herhaalt zijn invoer.

Eigenlijk is het verschil tussen een storing en geen storing zeer vaag. Een gebeurtenis die het ene programma kan interpreteren als een uitzonderlijke situatie, kan een ander programma interpreteren als een fout waar het mee om kan gaan.

Het criterium hier is als volgt: als bij het optreden van een probleem uw programma kan doorgaan met uitvoeren waarvoor het bedoeld is, dan is het geen uitzonderlijke situatie, en als het dat niet kan - dan ja, het is een uitzondering.

Bijvoorbeeld, we hebben een programma dat het e-mailadres van de gebruiker moet vragen. Als de gebruiker een e-mailadres in een ongeldige indeling heeft ingevoerd - is dat geen storing. Dit is een verwacht probleem en ons programma zal de gebruiker zo vaak om het e-mailadres vragen, totdat hij het correct invoert.

Stel dat ons programma, dat om het e-mailadres vraagt, dit correcte e-mailadres ook via internet moet verzenden. Op dat moment blijkt dat internet niet werkt. Dit is wel een probleem: het programma kan op geen enkele manier gegevens verzenden via internet, als internet niet werkt. Het programma kan niettemin doorgaan met zijn uitvoering: het kan informatie tonen over het probleem, de verzendpoging herhalen na enige tijd, enzovoort. Maar deze acties zijn niet helemaal waarvoor het programma was bedoeld, omdat de hoofdactie - het verzenden van het e-mailadres - niet kan worden uitgevoerd door het programma.

Heel vaak hangt het ervan af of het een uitzonderlijke situatie is of niet af van de programmeertaal. In veel talen, als er bijvoorbeeld een deling door nul plaatsvindt - wordt dat beschouwd als een uitzondering (omdat je niet door nul kunt delen), maar in JavaScript - niet (in JavaScript kun je wel door nul delen).

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren