কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে অবজেক্টের অ্যারে অন্য একটি অবজেক্টের অ্যারে দিয়ে ফিল্টার করা

ধরুন, আমাদের নিচের মতো দুটি অবজেক্টের অ্যারে রয়েছে:

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) একটি নতুন ফিল্টারড ভার্সন রিটার্ন করবে যেটিতে শুধু সেই অবজেক্টগুলো থাকবে যাদের name প্রপার্টি দ্বিতীয় অ্যারেতে (arr2) একই name প্রপার্টির সাথে নেই।

অতএব, এই কেসে আউটপুট হবে:

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. জাভাস্ক্রিপ্ট - অ্যারে অবজেক্টের length প্রোপার্টি

  2. জাভাস্ক্রিপ্টে অবজেক্ট ধারণকারী অ্যারে অফ অ্যারে Durch লুপ করা

  3. জাভাস্ক্রিপ্টে ফ্ল্যাট অবজেক্ট অ্যারেকে ট্রি-তে রূপান্তর

  4. জাভাস্ক্রিপ্টে অ্যাসোসিয়েটিভ অ্যারে ফিল্টার করা অন্য অ্যারে দিয়ে