কম্পিউটার

জাভাস্ক্রিপ্টে মূল সম্পত্তির উপর ভিত্তি করে অবজেক্টের গ্রুপিং


আমাদের একটি প্যারেন্টঅ্যারে রয়েছে যেটিতে একই আকারের অনেকগুলি সাব অ্যারে রয়েছে, প্রতিটি সাব অ্যারে হল দুটি বৈশিষ্ট্য ধারণকারী বস্তুর অ্যারে:কী এবং মান। একটি সাবয়ারের মধ্যে এটি নিশ্চিত করা হয় যে দুটি বস্তুর একই কী থাকতে পারে না তবে সমস্ত সাব্যারেতে একই জোড়া n কী রয়েছে যেখানে 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' ]
}

  1. জাভাস্ক্রিপ্ট অবজেক্ট:একটি গাইড

  2. কী/মান জোড়ার জন্য জাভাস্ক্রিপ্টে অবজেক্ট বনাম অ্যারে কীভাবে সমাধান করবেন?

  3. জাভাস্ক্রিপ্টে একটি মানের উপর ভিত্তি করে বস্তুগুলিকে কীভাবে গ্রুপ করবেন?

  4. 2টি বস্তুর তুলনা করার সময় গ্রুপিং অ্যারে নেস্টেড মান - জাভাস্ক্রিপ্ট