JavaScript හි ඇතිවන අවස්ථා වර්ග

JavaScript හි ව්‍යතිරේක ඇතිවීමට ඉඩ සලසන අවස්ථා ඉතා අල්පය. පළමුව, ඒවා ඇතිවීමට ස්ථාන ඉතා අල්ප නිසා.

දෙවනුව, එම භාෂාවම "සියල්ලටම සමාව දෙන සුළු" නිසා: එය බොහෝ දේ කෙරෙහි කනිෂ්ඨ දෘෂ්ටියකින් බලන අතර, උදාහරණයක් ලෙස, ශුන්‍යයෙන් බෙදීම හෝ වැරදි HTML කේතය. ඔබ පූරණය කිරීමට බලාපොරොත්තුවන රූපයක වැරදි මාර්ගයක් සපයාවත්, JavaScript එයට සමාව දෙන අතර එය ව්‍යතිරේකයක් ලෙස සලකන්නේ නැත.

කෙසේ වෙතත්, ව්‍යතිරේක අවස්ථා තිබේ. අපි සරලම දෙක ගෙන ඒවායේ උදාහරණ භාවිතා කර JavaScript හි ව්‍යතිරේක සමඟ වැඩ කිරීම ඉගෙන ගනිමු.

පළමු ව්‍යතිරේකය ඇතිවන්නේ, අපි වැරදි JSON පූර්ණයක් විග්‍රහ කිරීමට තැත් කරන විටය:

javascriptlet data = JSON.parse('{1,2,3,4,5}'); // මෙම json වැරදියි

දෙවන ව්‍යතිරේකය ඇතිවන්නේ, අපගේ වෙබ් අඩවිය සඳහා වෙන් කරන ලද දේශීය ගබඩාව පිරී ගිය විට (5 මෙගාබයිට වඩා වැඩි). අපි කෘතිමව එවැනි ව්‍යතිරේකයක් ඇති කරමු:

javascriptlet str = '';
for (let i = 1; i <= 6 * 10 ** 6; i++) { // මෙගාබයිට 5ට වඩා වැඩි තන්තුවක් සෑදේ
  str += '+';
}

localStorage.setItem('key', str); // ගබඩාවට ලිවීමට උත්සාහ කරමු

එවැනි ව්‍යතිරේක අවස්ථා සඳහා JavaScript ප්‍රතිචාර දක්වන්නේ කෙසේද? එය සරලව අසාර්ථකතාවය කොන්සෝලයේ දක්වා, ස්ක්‍රිප්ට් ක්‍රියාත්මක කිරීම සම්පූර්ණයෙන් නතර කරයි.

ක්‍රමලේඛකයින් ලෙස අපගේ කාර්යය වන්නේ, එවැනි අවස්ථාවක් හඳුනාගෙන එයට යම් ආකාරයකින් මුහුණ දීමයි, වැඩසටහන සම්පූර්ණයෙන් ක්‍රියා කිරීම නතර නොකර. මේ සඳහා විශේෂ try-catch ව්‍යුහයක් ඇත, එය අපි ඊළඟ පාඩම්වලදී ගෙනහැර දක්වමු.

Задание 1

ප්‍රමාණවත් තරම් විශාල ප්‍රමාණයේ තන්තුවක් සාදා එය දේශීය ගබඩාවට ලියා ගැනීමට උත්සාහ කරන්න. කොන්සෝලයේ අසාර්ථකතාවයක් දිස්වන බවට තහවුරු කර ගන්න.

Задание 2

වැරදි JSON පූර්ණයක් විග්‍රහ කිරීමට උත්සාහ කරන්න. කොන්සෝලයේ අසාර්ථකතාවයක් දිස්වන බවට තහවුරු කර ගන්න.