⊗jsSpExcInr 137 of 294 menu

გამონაკლისი სიტუაციების შესავალი JavaScript-ში

ახლა განვიხილავთ გამონაკლის სიტუაციებს JavaScript-ში. დასაწყისისთვის გავაკეთებ შესავალს, რომელშიც იქნება მაგალითები გამონაკლისი სიტუაციებისა ზოგადად ნებისმიერი პროგრამირების ენისთვის, და შემდეგ გავარკვევთ, როგორაა საქმე JavaScript-ში.

როდესაც ჩვენ ვწერთ ჩვენს პროგრამებს, ჩვენ ირიბად ვეთვლით, რომ ყველა პროგრამულ-ტექნიკური მექანიზმი, რომელსაც ვიყენებთ, იმუშავებს კორექტულად.

თუმცა, ეს ყოველთვის ასე არ არის. მონაცემების გადაცემისას ქსელით ხდება კავშირის შეწყვეტა და მონაცემები მოდის ჩვენთან არაკორექტული სახით, ან საერთოდ არ მოდის. ფაილის ჩაწერისას აღმოჩნდება, რომ გამოყოფილი ადგილი მყარ დისკზე დასრულდა და ფაილი ვერ იწერება. ფაილის კითხვისას აღმოჩნდება, რომ ასეთი ფაილი არ არსებობს და ჩვენ არ გვაქვს საიდანაც ვკითხოთ. მონაცემების ბეჭდვისას პრინტერზე ხდება კაბელის შეწყვეტა, რომელიც აკავშირებს პრინტერსა და კომპიუტერს.

ყველა აღწერილ სიტუაციას აქვს საერთო არსი: ხდება რაიმე უკაცრიელი, რომელიც იწვევს დაგეგმილი ოპერაციის დასრულების შეუძლებლობას ან უაზრობას.

ასევე ხდება სიტუაციები, რომლებშიც ხდება რაიმე შეცდომა, რომელიც არ არის უკაცრიელი. მაგალითად, თქვენ ეკითხებით მომხმარებელს მისი email-ის შესახებ, და ის შეიყვანს email-ს არაკორექტული ფორმატით. გასაგებია, რომ ჩვენმა პროგრამამ ვერ შეძლოს განაგრძოს email-ის დამუშავება, რადგან ის არ არის კორექტული. მაგრამ, მიუხედავად ამისა, ეს - არ არის გამონაკლისი სიტუაცია. ჩვენმა პროგრამამ შეიძლება თავად შეასწოროს სიტუაცია: ის გამოიტანს შეცდომის შესახებ შეტყობინებას და მომხმარებელი გაიმეორებს თავის შეყვანას.

სინამდვილეში განსხვავება უკაცრიელსა და არა უკაცრიელს შორის ძალიან გაურკვეველია. მოვლენა, რომელსაც ერთი პროგრამა შეიძლება განიხილავდეს როგორც გამონაკლის სიტუაციას, სხვა პროგრამა შეიძლება განიხილავდეს როგორც რაიმე შეცდომას, რომლისთანაც მას შეუძლია გაუმკლავდეს.

კრიტერიუმი აქ ასეთია: თუ პრობლემის წარმოქმნისას თქვენმა პროგრამამ შეძლოს გააგრძელოს შესრულება იმისა, რისთვისაც ის განკუთვნილია, მაშინ ეს არ არის გამონაკლისი სიტუაცია, ხოლო თუ ვერ შეძლოს - მაშინ კი, ეს არის გამონაკლისი.

მაგალითად, ჩვენ გვაქვს პროგრამა, რომელმაც უნდა იკითხოს მომხმარებლის email. თუ მომხმარებელმა შეიყვანა email არაკორექტული ფორმატით - ეს არ არის უკაცრიელი. ეს არის მოსალოდნელი პრობლემა და ჩვენი პროგრამა კითხულობს მომხმარებლის email-ს იმდენჯერ, სანამ ის არ შეიყვანს მას კორექტულად.

დავუშვათ, ჩვენი პროგრამა, რომელიც იკითხავს email-ს, ასევე უნდა გაგზავნოს ეს კორექტული email ინტერნეტის მეშვეობით. ამ დროს აღმოჩნდება, რომ ინტერნეტი არ მუშაობს. ეს უკვე პრობლემაა: პროგრამა ვერასოდეს შეძლებს მონაცემების გაგზავნას ინტერნეტის მეშვეობით, თუ ინტერნეტი არ მუშაობს. პროგრამა, მიუხედავად ამისა, შეძლებს გააგრძელოს თავისი შესრულება: მას შეუძლია გამოიტანოს ინფორმაცია პრობლემის შესახებ, გაიმეოროს გაგზავნის მცდელობა რამდენიმე ხნის შემდეგ, და ა.შ. მაგრამ ეს მოქმედებები უკვე არ არის სრულიად ის, რისთვისაც პროგრამა იყო განკუთვნილი, რადგან ძირითადი მოქმედება - email-ის გაგზავნა პროგრამას ვერ შეძლებს.

ძალიან ხშირად ის, გამონაკლისი სიტუაციაა თუ არა, დამოკიდებულია პროგრამირების ენაზე. ბევრ ენაში, თუ მოულოდნელად მოხდა ნულზე გაყოფა - ეს განიხილება როგორც გამონაკლისი (რადგან ნულზე გაყოფა არ შეიძლება), მაგრამ JavaScript-ში - არ განიხილება (JavaScript-ში ნულზე გაყოფა შეიძლება).

ქართული
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
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა