lodash开发工具库

902 阅读1分钟

介绍

lodash是一款流行多年的开发工具库,增加了数组,集合,类型判断,util等实用方法,大大弥补了js标准库方法太少的不足,常年稳定npm第一下载package 浏览文档发现已经有很多的方法已经被es6实现了,不过我认为还是很有必要学习一下的,lodash有以下几个优势:

  • 性能高,底层经过了性能优化,例如拍平数组,深拷贝对象,求两个数组交集等,比自己实现的效率要高很多
  • 无副作用,所有的方法都不改变源数据
  • 安全,许多方法查找遍历不存在的路径,不会报错阻塞进程
  • 前端圈的共识,前后端同构一致
  • 学习大神们的源码,提高编程水平

常用方法

  1. _.get[object]获取指定元素
let obj = {
  a: {
    name: 'lodash'  
  }
}
_.get(o,'a.name') // lodash
_.get(o,'b.name') // undefined
  1. -.chunk[array]分隔数组
_.chunk([1,2,3,4,5],2) // [[1,2],[3,4],[5]]
  1. -.flattenDeep[array]拍平数组
_.flattenDeep([1,2,[3,4,[5,[6,7]]]]) // [1,2,3,4,5,6,7]
  1. _.sample[collection]随机返回集合内一个元素
_.sample([1,2,3,4,5,6]) // random: 3
_.sample({a:1,b:2,c:3}) // random: 2
  1. _.range[util]创建一个数组
_.range(3) // [1,2,3]
  1. _.uniqueId[util]生成唯一ID
  2. _.repeat重复n次给定的字符串
_.repeat('*', 3) // '***'
  1. _.sum计算数组中值的和
_.sum([4, 2, 8, 6]) // 20
  1. _.throttle节流函数
  2. _.debounce防抖函数
  3. _.shuffle洗牌算法
_.shuffle([1, 2, 3, 4]) // [2,4,1,3]
  1. _.once创建一个只能调用一次的函数

待续~~~~