⊗jsSpExcET 138 of 294 menu

Soorte uitsonderlike situasies wat in JavaScript voorkom

In JavaScript is daar baie min situasies waar uitsonderings voorkom. Eerstens, bloot omdat daar baie min plekke is waar dit kan voorkom.

Tweedens, omdat die taal self "vergewend" is: dit kyk deur die vingers na baie dinge, byvoorbeeld, deling deur nul of na onkorrekte HTML kode. Selfs as jy 'n verkeerde pad spesifiseer na 'n prent wat jy wil laai, sal JavaScript jou dit vergewe en nie as 'n uitsondering beskou nie.

Daar is egter uitsonderlike situasies. Ons sal die twee eenvoudigste ondersoek en aan die hand van hulle die hantering van uitsonderings in JavaScript bestudeer.

Die eerste uitsondering vind plaas wanneer ons onkorrekte JSON wil ontleed:

let data = JSON.parse('{1,2,3,4,5}'); // hierdie json is onkorrek

En die tweede uitsondering vind plaas wanneer die plaaslike berging, toegewys aan ons webwerf, oorloop (meer as 5 megagrepe). Kom ons veroorsaak so 'n uitsondering kunsmatig:

let str = ''; for (let i = 1; i <= 6 * 10 ** 6; i++) { // vorm 'n string van meer as 5 mb str += '+'; } localStorage.setItem('key', str); // probeer om in berging te skryf

Hoe reageer JavaScript op sulke uitsonderlike situasies? Dit gooi bloot 'n fout in die konsole en staak die verdere uitvoering van die skrif.

Ons taak, as programmeerders, is om sulke situasies op te spoor en op een of ander manier daarmee te handel, sonder dat die program heeltemal ophou om uit te voer nie. Hiervoor is daar spesiale konstruksies soos try-catch, wat ons in die volgende lesse sal ondersoek.

Skep 'n string van 'n groot genoeg grootte en probeer om dit in die plaaslike berging te skryf. Maak seker dat daar 'n fout in die konsole sal wees.

Probeer om onkorrekte JSON te ontleed. Maak seker dat daar 'n fout in die konsole sal wees.

Afrikaans
Azə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
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp