Lodash常用函数(二)

数组/对象方法

1、remove(元素筛选,分到两个数组)

2、sortedUniq (去重,排序)

3、takeRightWhile ( 从array数组的最后一个元素开始提取元素,直到 predicate 返回假值 )

4、uniqBy (去重,排序)

5、groupBy(分组)

   const users = [
       { id: 'a', age: 40, height: 1 },
       { id: 'b', age: 39, height: 2 },
       { id: 'c', age: 38, height: 2 },
       { id: 'd', age: 40, height: 2 },
   ]
   console.log(lodash.groupBy(users, 'age'))
   // 按age分组:{38:obj for ['a'], 39:obj for ['b'], 40:obj for ['c', 'd']}
   console.log(lodash.groupBy(users, ({ age, height }) => age + height))
   // 按age+height结果分组:{40:obj for ['c'], 41:obj for ['a', 'b'], 42:obj for ['d']}

函数 Function

下面列举的是实际开发中应用场景较多的API,具体的用法就不做demo了,具体可参看官网API。

  1. after(n, func)  :调用执行n次后才能执行func

  2. before(n, func):调用n次后不再执行func,n次后的返回值为第n次返回值

  3. curry  |  curryRight :柯里化

  4. debounce :防抖

  5. defer :推迟调用func,直到当前堆栈清理完毕

  6. throttle :节流

  7. unary :创建一个最多接受一个参数的函数,忽略多余的参数

Lang

Lang下多为判断类型的API,常规的isXxx判断类型API就不做过多的介绍。下面介绍一些好用的API。

  1. 克隆系列:clone、cloneDeep、cloneWith、cloneDeepWith

  2. eq :判断相等,能判断NaN

  3. isEqual :判断两个对象可枚举value相等,注意不能用于对比DOM对象

  4. isEqualWith:定制isEqual比较

  5. isMatch :判断两个对象部分可枚举value相等

  6. isMatchWith :定制isMatch比较

原文地址:https://www.cnblogs.com/hy96/p/13293263.html