ধরুন, আমাদের কাছে এই ধরনের বস্তুর দুটি অ্যারে আছে −
const arr1 = [
{name:'test', lastname: 'test', gender:'f'},
{name:'test1', lastname: 'test1', gender:'f'},
{name:'test2', lastname: 'test2', gender:'m'}
];
const arr2 = [
{name:'test21', lastname: 'test21', gender:'f'},
{name:'test1', lastname: 'test1', gender:'f'},
{name:'test2', lastname: 'test2', gender:'m'},
{name:'test22', lastname: 'test22', gender:'m'}
]; এই অ্যারেগুলির মধ্যে কোনও পুনরাবৃত্ত বস্তু নেই ('নাম' বৈশিষ্ট্যের ভিত্তিতে পুনরাবৃত্তি) তবে প্রথম এবং দ্বিতীয় অবজেক্টে পুনরাবৃত্তি নাম সহ কিছু অবজেক্ট রয়েছে৷
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এই ধরনের দুটি অ্যারে নেয় এবং একটি নতুন অ্যারে প্রদান করে৷
নতুন অ্যারেতে প্রথম এবং দ্বিতীয় অ্যারের সমস্ত অনন্য বস্তু থাকা উচিত। এখানে, যেকোনো বস্তুর স্বতন্ত্রতা পরীক্ষা করতে আমরা তার অনন্য "নাম" বৈশিষ্ট্য পরীক্ষা করব।
উদাহরণ
এর জন্য কোড হবে −
const arr1 = [
{name:'test', lastname: 'test', gender:'f'},
{name:'test1', lastname: 'test1', gender:'f'},
{name:'test2', lastname: 'test2', gender:'m'}
];
const arr2 = [
{name:'test21', lastname: 'test21', gender:'f'},
{name:'test1', lastname: 'test1', gender:'f'},
{name:'test2', lastname: 'test2', gender:'m'},
{name:'test22', lastname: 'test22', gender:'m'}
];
const mergeUniquely = (arr1 = [], arr2 = []) => {
const newArr = arr1.concat(arr2);
const map = {};
const res = [];
newArr.forEach(el => {
if(!map[el['name']]){
res.push(el);
map[el['name']] = 1;
};
});
return res;
};
console.log(mergeUniquely(arr1, arr2)); আউটপুট
এবং কনসোলে আউটপুট হবে −
[
{ name: 'test', lastname: 'test', gender: 'f' },
{ name: 'test1', lastname: 'test1', gender: 'f' },
{ name: 'test2', lastname: 'test2', gender: 'm' },
{ name: 'test21', lastname: 'test21', gender: 'f' },
{ name: 'test22', lastname: 'test22', gender: 'm' }
]