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。
-
after(n, func) :调用执行n次后才能执行func
-
before(n, func):调用n次后不再执行func,n次后的返回值为第n次返回值
-
curry | curryRight :柯里化
-
debounce :防抖
-
defer :推迟调用
func
,直到当前堆栈清理完毕 -
throttle :节流
-
unary :创建一个最多接受一个参数的函数,忽略多余的参数
Lang
Lang下多为判断类型的API,常规的isXxx判断类型API就不做过多的介绍。下面介绍一些好用的API。
-
克隆系列:clone、cloneDeep、cloneWith、cloneDeepWith
-
eq :判断相等,能判断NaN
-
isEqual :判断两个对象可枚举value相等,注意不能用于对比DOM对象
-
isEqualWith:定制isEqual比较
-
isMatch :判断两个对象部分可枚举value相等
-
isMatchWith :定制isMatch比较
长风破浪会有时,直挂云帆济沧海