Skip to content

neki-dev/arrays-otherness

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

âš¡ Arrays otherness

Npm package version Small size Testing Building

Get and handle a matching, missing and excess items of an array based on target array

.

  • Install

npm i arrays-otherness
  • Usage

arraysOtherness<T>(
    // Array for checking
    currentArray: T[], 
    // Etalon array
    targetArray: T[], 
    // Function of matching arrays items
    matchFn: (res) => boolean
): {
    // Execute callback if items in two arrays
    match: (callback: (res) => void) => this,
    // Execute callback if target item missing in current array
    missing: (callback: (res) => void) => this,
    // Execute callback if current item is excess in target array
    excess: (callback: (res) => void) => this,
}
  • Example

const arraysOtherness = require('arrays-otherness');

const currentArray = [
    { id: 1, name: 'John' },
    { id: 2, name: 'Sam' },
    { id: 3, name: 'Nick' },
];

const targetArray = [
    { id: 1, name: 'Jonny' },
    { id: 3, name: 'Nick' },
    { id: 4, name: 'Lisa' },
    { id: 5, name: 'Frank' },
];

arraysOtherness(currentArray, targetArray, ({ current, target }) => (current.id === target.id))
    .match(({ target, current }) => {
        console.log('matched =', target, 'and', current);
    })
    .missing(({ target }) => {
        console.log('to create =', target);
    })
    .excess(({ current }) => {
        console.log('to delele =', current);
    });

About

🧩 Handle matching, missing and excess items of an array based on target array

Topics

Resources

License

Stars

Watchers

Forks