@arnaudnyc/object-filter

Returns a new object containing all elements of the calling object for which the provided filter callback returns true

Usage no npm install needed!

<script type="module">
  import arnaudnycObjectFilter from 'https://cdn.skypack.dev/@arnaudnyc/object-filter';
</script>

README

Object Filter

Coverage Status

Creates a copy of an object containing all elements for which the provided filter callback returns true.

Like Array.prototype.filter() but for objects.

This project has no dependencies.

Installation

npm

npm install @arnaudnyc/object-filter

yarn

yarn add @arnaudnyc/object-filter

Usage

const objectFilter = require('@arnaudnyc/object-filter');

const object = {
  keep: 'yes',
  discard: 'no',
};

const filteredByProperty = objectFilter(object, property => property === 'keep');
console.log('filteredByProperty:', filteredByProperty); // filteredByProperty: { keep: 'yes' }

const filteredByValue = objectFilter(object, (property, value) => value === 'yes');
console.log('filteredByValue:', filteredByValue); // filteredByValue: { keep: 'yes' }

// no mutation
console.log('object:', object); // object: { keep: 'yes', discard: 'no' }

Testing

npm test or yarn test

Credits

Made with ❤️ in 🗽

License

MIT