Remove Duplicate Array and Merge The Values

ZaIn KhAn

I've an array of objects. I want don't want to render duplicates array but I want it's items to be merged with it's same one which is render example shown below.

Original Array

array = [
  {
    name: 'Test',
    items: [
      {
        id: 1,
        product_name: "Kbana 1",
      },
      {
        id: 2,
        product_name: "Kbana 2",
      },
    ]
  },
  {
    name: 'Test 2',
    items: [
      {
        id: 3,
        product_name: "Kbana 3",
      },
      {
        id: 4,
        product_name: "Kbana 4",
      },
    ]
  },
  {
    name: 'Test 2',
    items: [
      {
        id: 5,
        product_name: "Kbana 5",
      },
      {
        id: 6,
        product_name: "Kbana 6",
      },
    ]
  },
]

Now I have two same array objects which index is 1 and 2. Now I wants to merge index 2 items values with index 1. Like example below

array = [
      {
        name: 'Test',
        items: [
          {
            id: 1,
            product_name: "Kbana 1",
          },
          {
            id: 2,
            product_name: "Kbana 2",
          },
        ]
      },
      {
        name: 'Test 2',
        items: [
          {
            id: 3,
            product_name: "Kbana 3",
          },
          {
            id: 4,
            product_name: "Kbana 4",
          },
          {
            id: 5,
            product_name: "Kbana 5",
          },
          {
            id: 6,
            product_name: "Kbana 6",
          },
        ]
      }
    ]
Ferin Patel

var arr = [
  {
    name: 'Test',
    items: [
      {
        id: 1,
        product_name: "Kbana 1",
      },
      {
        id: 2,
        product_name: "Kbana 2",
      },
    ]
  },
  {
    name: 'Test 2',
    items: [
      {
        id: 3,
        product_name: "Kbana 3",
      },
      {
        id: 4,
        product_name: "Kbana 4",
      },
    ]
  },
  {
    name: 'Test 2',
    items: [
      {
        id: 5,
        product_name: "Kbana 5",
      },
      {
        id: 6,
        product_name: "Kbana 6",
      },
    ]
  },
]

const newArr = [];

for(var i = 0;i<arr.length;i++)
{
    var name = arr[i].name;
    for(var j = 0;j<arr.length;j++)
    {
       if(i != j)
       {
          if(name === arr[j].name)
          {
              arr[i].items = [...arr[i].items, ...arr[j].items]
              arr[j].name = "remove";
          }
       }
    }
}

arr = arr.filter(data => data.name !== "remove");

console.log(arr);

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

Merge duplicate values in array

Remove duplicate values from php array and merge quantity

Merge properties of objects within a array together using values and remove duplicate

Merge values of array by duplicate keys

How to remove duplicate values in array?

PHP remove duplicate array values

Remove duplicate values in a tuple array

JQ - Remove Duplicate Array Values

Remove duplicate values and overwrite the array

Remove duplicate from object and merge in array

Loop through multi-dimensional array and remove duplicate and merge other values

Merge multidimensional array in php with duplicate values

Merge specific fields of array indexes with duplicate values

How to merge duplicate values in array of objects

PHP Mysql merge values (remove duplicate emails but keep values)

Remove duplicate values from a multidimensional array in PHP

How to remove duplicate values from an array in PHP

How to remove duplicate values from a multidimensional array?

Remove duplicate values from an array of objects in javascript

Remove duplicate values from JS array

How to remove duplicate property values in array

How to remove both duplicate values in an array of objects

Remove duplicate values from a multidimensional array

array_unique remove duplicate values in span

remove duplicate values from multidimensional array

How to remove partial duplicate values in jquery array

Remove duplicate values from flat ARRAY

Remove duplicate values from Array of Dictionaries

How to remove duplicate values inside an array in MONGODB?