কম্পিউটার

জাভাস্ক্রিপ্টে থাকা অবজেক্ট ধারণকারী অন্য অ্যারের উপর ভিত্তি করে অবজেক্ট ধারণকারী একটি অ্যারে ফিল্টার করুন


ধরুন আমাদের কাছে এই ধরনের বস্তুর দুটি অ্যারে আছে −

const arr1 = [{id:'1',name:'A'},{id:'2',name:'B'},{id:'3',name:'C'},{id:'4',name:'D'}];
const arr2 = [{id:'1',name:'A',state:'healthy'},{id:'3',name:'C',state:'healthy'}];

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এই ধরনের দুটি অ্যারে নেয়। আমাদের ফাংশনটি প্রথম অ্যারের (এই ক্ষেত্রে arr1) এর একটি নতুন ফিল্টার করা সংস্করণ ফেরত দেবে যাতে শুধুমাত্র সেইসব বস্তু রয়েছে যার নাম বৈশিষ্ট্য রয়েছে যা একই নামের বৈশিষ্ট্য সহ দ্বিতীয় অ্যারে (এই ক্ষেত্রে arr2) তে নেই৷

অতএব, আউটপুট, এই ক্ষেত্রে, −

এর মত হওয়া উচিত
const output = [{id:'2',name:'B'},{id:'4',name:'D'}];

উদাহরণ

এর জন্য কোড হবে −

const arr1 = [{id:'1',name:'A'},{id:'2',name:'B'},{id:'3',name:'C'},{id:'4',name:'D'}];
const arr2 = [{id:'1',name:'A',state:'healthy'},{id:'3',name:'C',state:'healthy'}];
const filterByReference = (arr1, arr2) => {
   let res = [];
   res = arr1.filter(el => {
      return !arr2.find(element => {
         return element.id === el.id;
      });
   });
   return res;
}
console.log(filterByReference(arr1, arr2));

আউটপুট

এবং কনসোলে আউটপুট হবে −

[ { id: '2', name: 'B' }, { id: '4', name: 'D' } ]

  1. জাভাস্ক্রিপ্ট - অ্যারে অবজেক্টের দৈর্ঘ্য

  2. কিভাবে আমরা জাভাস্ক্রিপ্ট এ অবজেক্ট ধারণকারী অ্যারের অ্যারের মাধ্যমে লুপ করব?

  3. জাভাস্ক্রিপ্টে গাছে বস্তুর সমতল অ্যারে

  4. জাভাস্ক্রিপ্ট অন্য অ্যারের সাথে একটি সহযোগী অ্যারে ফিল্টার করে