lodash 常规使用

433 阅读2分钟

这是我参与2022首次更文挑战的第9天,活动详情查看:2022首次更文挑战

lodash 常规使用集合文档传送门 介绍一些常用的函数的使用方法,也是自己比较常用的

安装

首先版本:"lodash": "4.17.21", 安装命令npm,yarn都可以

yarn add lodash / npm install lodash

数组与集合使用

_.chunk(array, [size=1])

将数组(array)拆分成多个 size 长度的区块

_.concat(array, [values])

创建一个新数组,将array与任何数组 或 值连接在一起

_.findIndex(array, [predicate=_.identity], [fromIndex=0])

跟find函数类似,find函数返回时数组中符合条件的元素,findIndex则返回符合条件元素的下标

_.flattenDeep(array)

array递归为一维数组。

_.join(array, [separator=','])

将 array 中的所有元素转换为由 separator 分隔的字符串

_.reverse(array)

反转array,使得第一个元素变为最后一个元素

_.slice(array, [start=0], [end=array.length])

裁剪数组array,从 start 位置开始到end结束,但不包括 end 本身的位置。

_.uniqBy(array, [iteratee=_.identity])

去除数组中相同的元素,去重使用

_.each(collection, [iteratee=_.identity])

遍历数组

_.groupBy(collection, [iteratee=_.identity])

数组分组,已对象的形式

_.includes(collection, value, [fromIndex=0])

是否包含元素

_.orderBy(collection, [iteratees=[_.identity]], [orders])

升序降序排序 指定为"desc" 降序,或者指定为 "asc" 升序

函数使用

_.cloneDeep(value)

这个方法类似_.clone,除了它会递归拷贝 value

_.isArray(value)

是否时数组类型

_.isEmpty(value)

是否为空

_.isEqual(value, other)

是否相等

_.chain(value)

这个属于链式操作简单举个例子

解析一下:现按照年龄排序,在遍历数组,显示数组中第一个元素pebbles is 1

var users = [
{ 'user': 'barney', 'age': 36 },
{ 'user': 'fred', 'age': 40 },
{ 'user': 'pebbles', 'age': 1 }
];

var youngest = _
.chain(users)
.sortBy('age')
.map(function(o) {
return o.user + ' is ' + o.age;\
})
.head()
.value();

// => 'pebbles is 1'

工作中遇到的一些方法也会更新在这个里面。方便查找。 持续更新中~~