⊗jsSpExcAT 144 of 294 menu

Примена типова изузетака у ЈаваСкрипту

Претпоставимо да имамо функцију која као параметар прима JSON са низом података и уписује сваки елемент тог низа у локалну меморију:

function saveData(json) { let arr = JSON.parse(json); for (let i = 0; i < arr.length; i++) { localStorage.setItem(i, arr[i]); } }

У овој функцији изузетна ситуација може настати на два места: при парсирању JSON-а и при покушају чувања података у локалну меморију.

Претпоставимо да смо, као обраду грешака, одлучили да прикажемо одређену поруку о проблемима:

try { saveData('{1,2,3,4,5}'); } catch (error) { alert('неки проблеми'); }

Наша порука је, наравно, добра, али она никако не разликује настале проблеме. Логичније би било приказати поруку о томе који је тачно проблем настао.

Зато ћемо разликовати настале грешке по имену:

try { saveData('{1,2,3,4,5}'); } catch (error) { if (error.name == 'QuotaExceededError') { alert('нема више простора у меморији'); } if (error.name == 'SyntaxError') { alert('неисправан JSON'); } }

Копирајте код моје функције saveData, а затим, без подсматривања у мој код, имплементирајте описану обраду грешака.

Намерно, једно за другим, направите изузетне ситуације које могу настати у функцији saveData.

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