जावास्क्रिप्ट में उत्पन्न होने वाली स्थितियों के प्रकार
जावास्क्रिप्ट में बहुत कम ऐसी स्थितियाँ हैं जिनमें अपवाद उत्पन्न होते हैं। सबसे पहले, केवल इसलिए क्योंकि उनके उत्पन्न होने के लिए बहुत कम स्थान हैं।
दूसरे, इसलिए क्योंकि भाषा स्वयं "सब क्षमा करने वाली" है: यह कई चीजों पर आँख मूंद लेती है, उदाहरण के लिए, शून्य से विभाजन या अमान्य HTML कोड पर। भले ही आप उस छवि का गलत पथ निर्दिष्ट करें जिसे आप लोड करना चाहते हैं, जावास्क्रिप्ट आपको यह भी माफ कर देगा और इसे एक अपवाद नहीं मानेगा।
हालाँकि, असाधारण स्थितियाँ मौजूद हैं। हम दो सबसे सरल स्थितियों को समझेंगे और उनके उदाहरण से जावास्क्रिप्ट में अपवादों के साथ काम करना सीखेंगे।
पहला अपवाद तब उत्पन्न होता है जब हम अमान्य 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); // संग्रहण में लिखने का प्रयास करें
जावास्क्रिप्ट ऐसी असाधारण स्थितियों पर कैसे प्रतिक्रिया करता है? यह केवल कंसोल में एक त्रुटि दिखाता है और स्क्रिप्ट का आगे का निष्पादन रोक देता है।
हमारा कार्य, प्रोग्रामर के रूप में,
ऐसी स्थिति को पकड़ना और किसी तरह
उससे निपटना है, प्रोग्राम को पूरी तरह से
निष्पादन रोकने नहीं देना है। इसके लिए
विशेष निर्माण try-catch मौजूद है,
जिसे हम अगले पाठों में समझेंगे।
पर्याप्त बड़े आकार की एक स्ट्रिंग बनाएँ और उसे स्थानीय संग्रहण में लिखने का प्रयास करें। सुनिश्चित करें कि कंसोल में त्रुटि होगी।
अमान्य JSON को पार्स करने का प्रयास करें। सुनिश्चित करें कि कंसोल में त्रुटि होगी।