JavaScript-ում առաջացող իրավիճակների տեսակները
JavaScript-ում շատ քիչ իրավիճակներ են առաջանում, երբ բացառություններ են տեղի ունենում: Նախ, պարզապես այն պատճառով, որ դրանց առաջացման համար շատ քիչ տեղեր կան:
Երկրորդ, որովհետև հենց լեզուն "ամենաչնչին" է. Այն շատ բանի նկատմամբ աչք է փակում, օրինակ, զրոյի բաժանման կամ ոչ ճիշտ HTML կոդի նկատմամբ: Նույնիսկ եթե դուք սխալ ճանապարհ նշեք նկարի համար, որը պատրաստվում եք բեռնել, JavaScript-ը դա ձեզ կների և չի համարի բացառություն:
Սակայն, բացառիկ իրավիճակներ կան: Մենք կվերլուծենք երկու ամենապարզները և դրանց օրինակով կուսումնասիրենք բացառությունների հետ աշխատանքը JavaScript-ում:
Առաջին բացառությունը առաջանում է, երբ մենք ցանկանում ենք վերլուծել ոչ ճիշտ JSON.
let data = JSON.parse('{1,2,3,4,5}'); // այս json-ը ոչ ճիշտ է
Իսկ երկրորդ բացառությունը առաջանում է, երբ տեղական
պահոցը, որը հատկացված է մեր կայքին, լցվում է
(5 մեգաբայթից ավելի): Եկեք արհեստականորեն
առաջացնենք այդպիսի բացառություն.
let str = '';
for (let i = 1; i <= 6 * 10 ** 6; i++) { // ձևավորում ենք 5 մբ-ից ավելի տող
str += '+';
}
localStorage.setItem('key', str); // փորձում ենք գրել պահոց
Ինչպես է JavaScript-ը արձագանքում այդպիսի բացառիկ իրավիճակներին: Այն պարզապես դուրս է հանում սխալը կոնսոլ և դադարեցնում է սկրիպտի հետագա կատարումը:
Մեր խնդիրը, որպես ծրագրավորողների, կայանում է
նրանում, որ բռնենք այդպիսի իրավիճակը և ինչ-որ կերպ
հաղթահարենք այն, չթողնելով, որ ծրագիրն ամբողջությամբ
դադարեցնի իր աշխատանքը: Դրա համար
գոյություն ունեն հատուկ կոնստրուկցիա try-catch,
որը մենք կվերլուծենք հաջորդ դասերում:
Ստեղծեք բավականաչափ մեծ չափի տող և փորձեք գրել այն տեղական պահոց: Համոզվեք, որ կոնսոլում սխալ կլինի:
Փորձեք վերլուծել ոչ ճիշտ JSON: Համոզվեք, որ կոնսոլում սխալ կլինի: