日常开发中经常会遇到需要过滤掉值为 undefined、null 的对象,使用 Lodash 的 omitBy 方法可以非常便捷的实现。

参数

  1. object (Object): 来源对象。
  2. [predicate=_.identity] (Function): 调用每一个属性的函数。(也就是当满足这个条件将会被过滤掉
const { omitBy } = require("lodash")

const filterParams = {
  day: 1,
  min: undefined,
  max: null,
  age: ""
}

omitBy(filterParams, (value, key) => value === undefined || value === null)
// 运行结果:{ day: 1, age: '' }