⊗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šuMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние користиме колачиња за работата на веб-страната, анализа и персонализација. Обработката на податоци се врши во согласност со Политиката за приватност.
прифати ги сите прилагоди одбиј