ধরা যাক e-এর একটি parentArray রয়েছে যাতে একই আকারের প্রতিটিতে অনেকগুলি সাব অ্যারে রয়েছে, প্রতিটি সাবঅ্যারে হল দুটি বৈশিষ্ট্য ধারণকারী বস্তুর একটি অ্যারে:কী এবং মান। একটি সাবয়ারের মধ্যে এটি নিশ্চিত করা হয় যে দুটি বস্তুর একই কী থাকতে পারে না তবে সমস্ত সাবঅ্যারেতে একই জোড়া nkey রয়েছে যেখানে n হল সাব অ্যারের আকার৷
আমাদের কাজ হল অবজেক্টের কী হিসাবে কী দিয়ে একটি অবজেক্ট প্রস্তুত করা এবং মান হল একটি অ্যারে যাতে সেই নির্দিষ্ট কীটির জন্য সমস্ত মান রয়েছে।
এখানে আমাদের নমুনা প্যারেন্ট অ্যারে -
const parentArray = [[ { key: 123, value: 'India' }, { key: 124, value: 'USA' }, { key: 125, value: 'Japan' }, { key: 126, value: 'Denmark' }, { key: 127, value: 'Austria' }, ], [ { key: 124, value: 'Kenya' }, { key: 126, value: 'UK' }, { key: 123, value: 'Germany' }, { key: 127, value: 'Spain' }, { key: 125, value: 'Portugal' }, ]];
আমরা প্যারেন্ট অ্যারে এবং তারপরে সমস্ত সাব অ্যারে একে একে পুনরাবৃত্তি করব এবং যদি আমরা মিলে যাওয়া কী খুঁজে পাই তবে আমরা এটিকে মান অ্যারেতে পুশ করব অন্যথায় আমরা একটি নতুন মান অ্যারে তৈরি করব।
এর জন্য সম্পূর্ণ কোড হবে −
উদাহরণ
const parentArray = [[ { key: 123, value: 'India' }, { key: 124, value: 'USA' }, { key: 125, value: 'Japan' }, { key: 126, value: 'Denmark' }, { key: 127, value: 'Austria' }, ], [ { key: 124, value: 'Kenya' }, { key: 126, value: 'UK' }, { key: 123, value: 'Germany' }, { key: 127, value: 'Spain' }, { key: 125, value: 'Portugal' }, ]]; const map = {}; parentArray.forEach(arr => { arr.forEach(obj => { const { key, value } = obj; if(map[key]){ map[key].push(value); }else{ map[key] = [value] } }) }); console.log(map);
আউটপুট
কনসোলে আউটপুট হবে −
{ '123': [ 'India', 'Germany' ], '124': [ 'USA', 'Kenya' ], '125': [ 'Japan', 'Portugal' ], '126': [ 'Denmark', 'UK' ], '127': [ 'Austria', 'Spain' ] }