📜  Lodash 或 Underscore——pick、pickBy、omit、omitBy

📅  最后修改于: 2022-05-13 01:58:09.678000             🧑  作者: Mango

Lodash 或 Underscore——pick、pickBy、omit、omitBy

Javascript无处不在。 Javascript被广泛使用,它不仅限于您的网络浏览器,还广泛用于服务器端。 95% 的网站都使用 JavaScript。

Lodash 或 Underscore 使 Javascript 编码变得更加容易,也使我们的代码最小化,它适用于数组、数字、对象、字符串等。

我们基本上可以将 Lodash 与任何基于 JS 的库或框架一起使用,例如 w/Angular、React、VueJs、Node.Js、Vanilla JS 等。

Lodash 的模块化方法非常适合:

  1. 迭代数组、对象和字符串
  2. 操作和测试值
  3. 创建复合函数

让我们通过非常基本和最常用的 Lodash 方法来简化我们的日常生活并提高代码的可读性。

1. 挑选

2.挑选

3.省略

4.省略等等..

PickOmit是相反的,正如名称所描述的, omit用于根据我们的需要从对象中省略/排除参数,另一方面, pick用于选择/包含定义的元素。

例子:

let geeksforgeeks = {
   "name" : "geeksforgeeks",
   "location" : "NCR",
   "vacancies" : null,
   "amenities" : ['free_breakfast','health_insurance'],
   "interview_process" : ["DSA","Technical","HR"]
};



现在,只从您的对象中获取有效值,即除了 null 和 undefined

/* now validGFG object contains only 
valid (!null & !undefined) key-value pairs. */
let validGFG = _.pickBy(geeksforgeeks, 
   v => !_.isUndefined(v) && !_.isNull(v));



要从我们的validGFG对象中获取除一些之外的所有键值对,我们可以简单地这样做:

// this object contains all key-value pairs except amenities.
let geeksInfoExceptAmenities = _.omit(validGFG, ['amenities']);



我们可以进一步消除所有数组/字符串/数字/等。从我们的对象,

/* this object will contain only name & location just
because we omitted all the array type from our object. */
let geeksInfoExceptInsideArrays = _.omitBy(validGFG, _.isArray);



要获取一些特定的键值对,

// this object contains name & location only.
let geeksNameAndLocation = _.pick(validGFG, ['name','location']);



我们可以使用上述函数的多种组合并更轻松地处理我们的数组、对象等等。

更多信息,您可以浏览 Lodash 的文档。