Aina za Hali Zisizotarajiwa Katika JavaScript
Katika JavaScript, kuna hali chache sana ambazo huleta ubaguzi. Kwanza, kwa sababu tu, kuna maeneo machache sana yanayoweza kuyasababisha.
Pili, kwa sababu lugha yenyewe "inasamehe": inapuuza mambo mengi, kwa mfano, mgawanyiko kwa sifuri au msimbo wa HTML usio sahihi. Hata kama utataja njia isiyo sahihi ya picha unayotaka kupakua, JavaScript itakusamehe na hiyo wala haitaona kuwa ni ubaguzi.
Hata hivyo, kuna hali zisizotarajiwa. Tutazichambua mbili rahisi zaidi na kwa kutumia mfano wao tutajifunza kufanya kazi na ubaguzi katika JavaScript.
Ubaguzi wa kwanza hutokea tunapotaka kuchambua JSON isiyo sahihi:
let data = JSON.parse('{1,2,3,4,5}'); // JSON hii si sahihi
Na ubaguzi wa pili hutokea wakati kuhifadhi la ndani,
kilichotengwa kwa tovuti yetu, linajaa kupita kiwango
(zaidi ya 5 megabaiti). Wacha tuwasababishe
ubaguzi kama huo kwa njia ya bandia:
let str = '';
for (let i = 1; i <= 6 * 10 ** 6; i++) { // tunaunda mfuatano zaidi ya MB 5
str += '+';
}
localStorage.setItem('key', str); // tunajaribu kuandika kwenye kuhifadhi
JavaScript humathirikaje kwa hali zisizotarajiwa kama hizo? Inatoa tu makosa kwenye konsoli na kusitisha utekelezaji wa zaidi wa hati.
Kazi yetu, kama programu, ni
kuwinda hali kama hiyo na kuitatua kwa namna fulani,
try-catch,
ambao tutachambua katika masomo yafuatayo.
Unda mfuatano wa ukubwa wa kutosha na ujaribu kuiandika katika kuhifadhi la ndani. Hakikisha kwamba, kutakuwa na makosa kwenye konsoli.
Jaribu kuchambua JSON isiyo sahihi. Hakikisha kwamba, kutakuwa na makosa kwenye konsoli.