ধরা যাক, আমাদের কাছে নিচের মতো একটি অবজেক্ট রয়েছে:
const products = {
"Pineapple":38,
"Apple":110,
"Pear":109
};
সকল কী নিজস্বভাবে ইউনিক এবং সকল মানও নিজস্বভাবে ইউনিক। আমাদের একটি ফাংশন লিখতে হবে যা একটি মান গ্রহণ করবে এবং তার কী রিটার্ন করবে।
উদাহরণস্বরূপ: findKey(110) কল করলে রিটার্ন করবে:
"Apple"
আমরা এই সমস্যাটি সমাধান করব প্রথমে মানগুলোকে কীতে রিভার্স ম্যাপিং করে, তারপর সহজে অবজেক্ট নোটেশন ব্যবহার করে মান খুঁজে বের করে।
উদাহরণ
নিচের কোডটি দেখুন:
const products = {
"Pineapple":38,
"Apple":110,
"Pear":109
};
const findKey = (obj, val) => {
const res = {};
Object.keys(obj).map(key => {
res[obj[key]] = key;
});
// যদি মান অবজেক্টে না থাকে
// false রিটার্ন করবে
return res[val] || false;
};
console.log(findKey(products, 110));
আউটপুট
এটি কনসোলে নিচের আউটপুট তৈরি করবে:
Apple