জাভাস্ক্রিপ্টে এক্সেপশন হ্যান্ডলিং

এক্সেপশন হ্যান্ডলিং এর জন্য try-catch কনস্ট্রাকশন ব্যবহৃত হয়। এর সিনট্যাক্স নিম্নরূপ:

javascripttry {
  // কোড
} catch (error) {
  // এরর হ্যান্ডলিং
}

try ব্লকে সেই কোডটি রাখা উচিত যা এক্সেপশন তৈরি করতে পারে। যদি এই কোড এক্সিকিউট করার সময় কোনো এক্সেপশন উত্থাপিত হয়, তাহলে আমাদের স্ক্রিপ্টটি কনসোলে এরর সহ ক্র্যাশ করবে না, বরং catch ব্লকের কোড এক্সিকিউট হতে শুরু করবে।

এই ব্লকে আমাদেরকে কোনোভাবে এরর হ্যান্ডলিং করতে হবে। উদাহরণস্বরূপ, যদি আমরা ইন্টারনেটের মাধ্যমে কিছু ডেটা পাঠাতে চেয়েছি এবং ইন্টারনেট কাজ না করে, catch ব্লকে আমরা পরিস্থিতি মোকাবেলা করতে পারি: উদাহরণস্বরূপ, ব্যবহারকারীকে একটি বার্তা দেখানো যেতে পারে, বা কিছু সময় পরে আবার ডেটা পাঠানোর চেষ্টা করা যেতে পারে - যদি ইন্টারনেট আবার কাজ করে।

আর যদি try ব্লক এক্সিকিউট করার সময় কোনো এক্সেপশন না ঘটে, তাহলে কোডটি স্বাভাবিকভাবে এক্সিকিউট হবে, এবং catch ব্লকের কোড - এক্সিকিউট হবে না।

উদাহরণ হিসেবে আসুন JSON পার্স করার চেষ্টা করি এবং এটি ভুল হলে একটি বার্তা দেখাই:

javascripttry {
  let data = JSON.parse('{1,2,3,4,5}');
} catch (error) {
  alert('JSON পার্স করা সম্ভব নয়');
}
Задание 1

নিচের কোডটি একটি স্ট্রিং লোকাল স্টোরেজে save করে:

javascriptlet str = 'কিছু স্ট্রিং';
localStorage.setItem('key', str);

এই কোডটি try-catch কনস্ট্রাকশনে wrap করুন। catch ব্লকে স্টোরেজ পূর্ণ হওয়ার বার্তা দেখান। আপনার কোডের কার্যকারিতা 5 MB এর কম স্ট্রিং এবং বড় স্ট্রিং এর জন্য পরীক্ষা করুন।

Задание 2

একটি JSON দেওয়া আছে, যার ভিতরে একটি অ্যারে রয়েছে। যদি এই JSON সঠিক হয়, তাহলে অ্যারের এলিমেন্টগুলো ul লিস্ট হিসেবে দেখান। আর যদি JSON সঠিক না হয়, তাহলে পেজে একটি এরর বার্তা দেখান।