uniqq
Removes all duplicates from multiple nested array recursively.
Usage
First install using npm:
npm install uniqq
Array Object
input parameters:
Then use it as follows:
array
is the array to remove items fromkey
is the key of object with duplicate value
const removeDuplicates = require('uniqq');
const arrObj = [
{ name: 'Leonor' },
{ name: 'Esperanza' },
{ name: 'Leonor' },
{ name: 'Horacio' },
{ name: 'Leonor' },
{ name: 'Nicholas' },
{ name: 'Leonor' }
];
console.log(removeDuplicates(arrObj, key = 'name'));
Nested Array Object
This method remove all duplicate objects recursively base on object key
Then use it as follows:
const removeDuplicates = require('uniqq');
const arr = [{ id: 1, title: 'technology lovers' }, { id: 2, title: 'geeks' }, { id: 2, title: 'geeks' }, { id: 1, title: 'musics' }, {
id: 4, jobs: [
{ id: 1, title: 'chef' },
{ id: 2, title: 'accountant' },
{ id: 2, title: 'teacher' },
{ id: 2, title: 'teacher' },
{ id: 2, title: 'teacher' },
], educations: [
{ id: 1, title: 'software engineer' },
{ id: 1, title: 'software engineer' },
{ id: 2, title: 'data science' },
{ id: 2, title: 'data science' },
{ id: 2, title: 'data science' },
{ id: 2, title: 'data science' },
{ id: 54, title: 'data science' },
{ id: 2, title: 'data science' },
{
fields: [
{
main: [
{ id: 1, title: 'software engineer' },
{ id: 2, title: 'data science' },
{ id: 2, title: 'data science' },
{ id: 2, title: 'data science' },
{ id: 2, title: 'data science' }
]
}
]
}
]
}];
console.log(removeDuplicates(arr, 'title', true));
Note: if you don't want to remove duplicate objects recursively you can set nestedRemover parameter false as follow:
removeDuplicates(arr, 'title', false);
Array String
Then use it as follows:
const removeDuplicates = require('uniqq');
const strArr = ['alex', 'william', 'martin', 'sara', 'sara', 'max'];
console.log(removeDuplicates(strArr));
Array Numbers
Then use it as follows:
const removeDuplicates = require('uniqq');
const numberArr = [111, 22, 33, 44, 55, 66, 77, 88, 88, 99, 10, 10, 10, 10];
console.log(removeDuplicates(numberArr));
Support
Contributors
Pull requests are always welcome! Please base pull requests against the main branch and follow the contributing guide.
if your pull requests makes documentation changes, please update readme file.
License
This project is licensed under the terms of the
MIT license