mirror of
https://github.com/jbranchaud/til
synced 2026-01-03 15:18:01 +00:00
1.1 KiB
1.1 KiB
Purge Null And Undefined Values From Object
The low-level utilities provided by lodash offer a
couple ways to remove all the null and undefined values from an object.
First, here is an object that I want to compact by removing all nil (null
and undefined) values.
const data = {
hello: 'world',
list: [1,2,3],
status: undefined,
published_at: null,
points: 0
}
One method of doing this is with the _.pickBy
function.
> _.pickBy(data)
//=> { hello: 'world', list: [1,2,3] }
Because it defaults to picking truthy values, the points: 0 is also going
to be stripped out.
Another method which allows us to more directly target just null and
undefined uses _.omitBy and
_.isNil.
> _.omitBy(data, _.isNil)
//=> { hello: 'world', list: [1,2,3], points: 0 }
Notice this approach only removes the null and undefined key-value pairs.
The points: 0 is left in.