⊗jsSpExcAT 144 of 294 menu

გამონაკლისების ტიპების გამოყენება JavaScript-ში

დავუშვათ, გვაქვს ფუნქცია, რომელიც პარამეტრად იღებს 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ščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა