⊗jsSpExcET 138 of 294 menu

JavaScript radušās situāciju veidi

JavaScript ir ļoti maz situāciju, kurās rodas izņēmumi. Pirmkārt, vienkārši tāpēc, ka ir ļoti maz vietu, kur tie var rasties.

Otrkārt, tāpēc, ka pati valoda ir "vispiedošā": tā uz daudzām lietām skatās caur pirkstiem, piemēram, uz dalīšanu ar nulli vai uz nekorektu HTML kodu. Pat ja jūs norādīsiet nepareizu ceļu uz attēlu, kuru grasāties ielādēt, JavaScript jums to piedos un neuzskatīs par izņēmumu.

Tomēr, izņēmuma situācijas pastāv. Mēs izanalizēsim divas vienkāršākās un uz to piemēra izpētīsim darbu ar izņēmumiem JavaScript.

Pirmais izņēmums rodas, kad mēs vēlamies parsēt nekorektu JSON:

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

Un otrais izņēmums rodas, kad lokālā krātuve, kas piešķirta mūsu vietnei, ir pārpildīta (vairāk nekā 5 megabaiti). Radīsim šādu izņēmumu mākslīgi:

let str = ''; for (let i = 1; i <= 6 * 10 ** 6; i++) { // veidojam virkni vairāk nekā 5 mb str += '+'; } localStorage.setItem('key', str); // mēģinām ierakstīt krātuvē

Kā JavaScript reaģē uz šādām izņēmuma situācijām? Tas vienkārši izmet kļūdu konsolē un pārtur turpmāku skripta izpildi.

Mūsu kā programmētāju uzdevums ir noķert šādu situāciju un kā ar to tikt galā, neļaujot programmai pilnībā pārtraut savu izpildi. Šim nolūkam pastāv īpaša konstrukcija try-catch, ko mēs apskatīsim nākamajās nodarbībās.

Izveidojiet pietiekami liela izmēra virkni un mēģiniet to ierakstīt lokālajā krātuvē. Pārliecinieties, ka konsolē parādīsies kļūda.

Mēģināt parsēt nekorektu JSON. Pārliecinieties, ka konsolē parādīsies kļūda.

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt