জাভাস্ক্রিপ্টে TypeError হলো একটি এরর অবজেক্ট যা অপারেশন আশা করা টাইপের মান না পাওয়ায় নিক্ষেপ করা হয়। ECMAScript স্পেসিফিকেশন অনুযায়ী ৯টি ডেটা ও স্ট্রাকচারাল টাইপ রয়েছে: undefined, Boolean, Number, String, BigInt, Symbol, Object, Function, null। টাইপ অনিশ্চিত থাকলে typeof অপারেটর ব্যবহার করুন।
সাধারণ TypeError এবং সমাধান
১. পরিবর্তন নয় এমন মান পরিবর্তন করার চেষ্টা
const a = 5; a = "5"; // TypeError: Assignment to constant variable.
সমাধান: ভিন্ন ভেরিয়েবল নাম ব্যবহার করুন। const b = "5"
২. মানকে অনुचিতভাবে ব্যবহার করা
function Cat() {}
let garfield = new Cat();
Cat instanceof garfield // TypeError: Right-hand side of 'instanceof' is not callable
সমাধান: অর্ডার ঠিক করুন: garfield instanceof Cat
৩. ফাংশন আশা করা টাইপের আর্গুমেন্ট না পাওয়া
function readingErrorsAreImportant(a){
if(a.length === 5){ return "equals five"; }
// ...
}
console.log(readingErrorsAreImportant(null)); // TypeError: Cannot read property 'length' of null
সমাধান: সঠিক টাইপের আর্গুমেন্ট পাস করুন: readingErrorsAreImportant(10)
উপসংহার
TypeError বুঝতে typeof অপারেটর ব্যবহার করুন। কোড ডিবাগ করার জন্য এরর মেসেজ এবং লাইন নম্বর খুব গুরুত্বপূর্ণ।