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.