জাভাস্ক্রিপ্টে অবজেক্টের উপাদান পাওয়ার ত্রুটি
ধরুন আমাদের কাছে একটি অবজেক্ট আছে:
let obj = {
a: 1,
b: 2,
c: 3,
d: 4,
e: 5,
};
ধরুন আমরা এই অবজেক্ট থেকে একটি নির্দিষ্ট কী দ্বারা উপাদান পেতে চাই। ধরুন এই কী-এর নাম ব্যবহারকারী একটি ইনপুটে প্রবেশ করায়:
console.log(input.value);
কিছু নবীন প্রোগ্রামার নিম্নলিখিত ভুলটি করে থাকেন: তারা একটি লুপে অবজেক্টটি পরিদর্শন করে, পালাক্রমে কীগুলিকে ইনপুটের মানের সাথে তুলনা করে, এভাবে:
for (let key in obj) {
if (key === input.value) {
let elem = obj[key];
console.log(elem); // কাঙ্ক্ষিত মান
break;
}
}
যাইহোক, এই কাজটিতে লুপ সম্পূর্ণ superfluous. কারণ আমরা সহজেই আমাদের মানটি কী দ্বারা পেতে পারি, এভাবে:
let elem = obj[input.value];
প্রয়োজনে, অবজেক্টে এমন কীের অস্তিত্ব পরীক্ষা করা যেতে পারে:
if (obj[input.value] !== undefined) {
let elem = obj[input.value];
console.log(elem);
} else {
console.log('অবজেক্টে এমন কোনো কী নেই');
}