filter-object-assign
v1.0.1
Published
extends the specified keys into the given object
Downloads
4
Maintainers
Readme
filter-object-assign
A small utility like ES2015 Object.assign(), but only merging in objects that pass the given filter function.
var assign = require('filter-object-assign')
target = assign(target, sources..., filterFunction)
Much of the implementation is from Sindre Sorhus' object-assign.
Install
npm install filter-object-assign --save
Example
var assign = require('filter-object-assign')
var stats = {
health: 100,
manna: 100
}
var wizard = {
name: 'Hilbert',
health: 75
}
assign(stats, wizard, function (value, key, object) {
return typeof value === 'number'
})
console.log(stats)
//=> { health: 75, manna: 100 }
Usage
target = filterAssign(target, sources, ..., filterFunction)
Behaves like Object.assign() in that it merges the variable-length sources
arguments into the target
object (from left to right). The target
object, which must not be null/undefined, is returned.
A filterFunction
must be passed as the last argument. This function takes the following parameters:
- value the value of the property about to be merged
- key the property name string about to be merged
- object the (source) object being enumerated and merged
If the function returns true
, that property will be merged in. Otherwise, it will be skipped.
See Also
License
MIT, see LICENSE.md for details.