Skip to content

Latest commit

 

History

History
40 lines (31 loc) · 1.08 KB

purge-null-and-undefined-values-from-object.md

File metadata and controls

40 lines (31 loc) · 1.08 KB

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.