JavaScript में अपवाद प्रकारों का अनुप्रयोग

मान लीजिए कि हमारे पास एक फ़ंक्शन है जो डेटा की एक सरणी के साथ JSON को पैरामीटर के रूप में स्वीकार करता है और इस सरणी के प्रत्येक तत्व को स्थानीय संग्रह में लिखता है:

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

इस फ़ंक्शन में अपवाद स्थिति दो स्थानों पर उत्पन्न हो सकती है: JSON को पार्स करते समय और स्थानीय संग्रह में डेटा सहेजने के प्रयास के दौरान।

मान लीजिए, उदाहरण के लिए, त्रुटि प्रसंस्करण के रूप में हमने कुछ समस्या संदेश प्रदर्शित करने का निर्णय लिया:

javascripttry {
  saveData('{1,2,3,4,5}');
} catch (error) {
  alert('कुछ समस्याएँ');
}

हमारा संदेश, यह निश्चित रूप से अच्छा है, लेकिन यह उत्पन्न होने वाली समस्याओं में कोई अंतर नहीं करता है। यह अधिक तार्किक होगा कि कौन सी विशेष समस्या उत्पन्न हुई है इसके बारे में संदेश प्रदर्शित किया जाए।

इसके लिए, होने वाली त्रुटियों को नाम से अलग करें:

javascripttry {
  saveData('{1,2,3,4,5}');
} catch (error) {
  if (error.name == 'QuotaExceededError') {
    alert('संग्रह में स्थान समाप्त');
  }
  
  if (error.name == 'SyntaxError') {
    alert('अमान्य JSON');
  }
}
Задание 1

मेरे फ़ंक्शन saveData का कोड कॉपी करें, और फिर मेरे कोड में देखे बिना मेरे द्वारा वर्णित त्रुटि प्रसंस्करण को लागू करें।

Задание 2

जानबूझकर एक-एक करके उन अपवाद स्थितियों को बनाएं जो saveData फ़ंक्शन में उत्पन्न हो सकती हैं।