জাভাস্ক্রিপ্টে নেস্টেড কোডে এক্সেপশন ইন্টারসেপ্ট
এক্সেপশনের বৈশিষ্ট্য এবং সুবিধা হল যে কোডের যেকোনো নেস্টিং লেভেলে সেগুলো ক্যাচ করা যায়। আসুন একটি উদাহরণ দেখি। ধরুন আমাদের কাছে একটি ফাংশন আছে, যা ডেটা সেভ করে লোকাল স্টোরেজে:
function save(str) {
localStorage.setItem('key', str);
}
আপনি ইতিমধ্যেই জানেন, স্টোরেজ ওভারফ্লো হলে,
setItem মেথডটি একটি এক্সেপশন থ্রো করবে।
যাইহোক, এই এক্সেপশনটি অবশ্যই ফাংশনের ভিতরে
ক্যাচ করতে হবে এমন নয়। ফাংশনটির প্রতিটি কলকে
try ব্লকে র্যাপ করা যেতে পারে:
try {
save('কিছু স্ট্রিং');
} catch (error) {
alert('লোকাল স্টোরেজে জায়গা শেষ হয়ে গেছে!');
}
একটি ফাংশন দেওয়া আছে, যা JSON কে অ্যারেতে রূপান্তর করে:
function getArr(json) {
return JSON.parse(json);
}
নিচের কোডে JSON থেকে একটি অ্যারে পাওয়া যায়:
let arr = getArr('[1,2,3,4,5]');
console.log(arr);
ফাংশন কলটিকে try-catch কন্সট্রাকশনে র্যাপ করুন।