⊗jsSpExcET 138 of 294 menu

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 парсить етуге тырысыңыз. Консольде қате болатынына көз жеткізіңіз.

Қазақ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართული한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Біз сайттың жұмысы, аналитика және персонализация үшін cookie файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау