Lodash常用函数(二)

摘要:
数组/对象方法1、remove2、sortedUniq3、takeRightWhile4、uniqBy5、groupBy(分组)constusers=[{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//按age分组:{38:objfor['a'],39:objfor['b'],40:objfor['c','d']}console.log//按age+height结果分组:{40:objfor['c'],41:objfor['a','b'],42:objfor['d']}函数Function下面列举的是实际开发中应用场景较多的API,具体的用法就不做demo了,具体可参看官网API。
数组/对象方法

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比较

免责声明:文章转载自《Lodash常用函数(二)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇RN 上传文件到以及上传文件到七牛云(初步)Linux、UNIX设置开机自动运行命令、脚本配置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

每日技术:npm模块安装机制

内容来自:https://github.com/Advanced-Frontend/Daily-Interview-Question/issues/22 npm模块安装机制 发出npm install命令 查询node_modules目录之中是否已经存在指定模块 若存在,不再重新安装   若不存在, npm 向register查询模块压缩包的网址 下...

webpack之代码分离

https://robertknight.github.io/posts/webpack-dll-plugins/ webpack一般会把一个文件里import/require的文件都会打包在一起,最近就在做这方面的工作,文件全部打包在一起了 对服务器的请求确实减少了,可是对于jquery和jquery的插件如果在每个文件重复打包,文件大了加载会很慢,而且...

lodash 数组元素查找 findIndex

_.findIndex(array, [predicate=_.identity]) 这个方法类似 _.find。除了它返回最先通过 predicate 判断为真值的元素的 index ,而不是元素本身。 <!DOCTYPE html> <html lang="zh"> <head>...

lodash 移除假值数组 compact

创建一个移除了所有假值的数组。例如:false、null、 0、""、undefined, 以及NaN 都是 “假值”. <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8" /> <...

Lodash数组篇

概念简述 lodash 是一个类库 Lodash 通过降低 array、number、objects、string 等等的使用难度从而让 JavaScript 变得更简单 用法let _ = require('lodash') 数组篇 1、_.chunk(array,[size=1]) 切割数组 作用: 讲数组array拆分成多个size长度的区...

npm使用过程中的一些错误解决办法及npm常用命令和技巧

 node,npm在前端开发流程中提供了非常完善的自动化工具链,但是同样由于其复杂性导致有很多奇奇怪怪的问题。本文将记录使用过程中出现的一些问题及其解决方法备案。 国内由于gfw问题,导致很多国外的网站不能访问,比如bitbucket就是一个host代码的很优秀平台,但是由于该平台可能被block住,从而导致npm安装时出现奇奇怪怪的问题。有以下方法解决:...