Lodash常用函数学习总结

一、官网地址

lodash官网
前端开发一个跟便捷的简化代码的工具,优势很明显,优化代码,同样的也会有一定的弊端,就是对于熟悉lodash的开发着来说,确实很爽,对于小白来说,可能会更懵逼,同时建议初学者还是造造轮子,等一切熟悉之后在来用工具来提升速度吧
吐槽一下,老婆饼没有老婆,中文文档没中文,总结一下常用的lodash的函数:

二、数组操作

注意一点:大家要留意数组操作的返回值,是新数组,还是原数组

2.1 _.chunk(数组分割)

简而言之,就是对于数组进行分割,返回一个新数组

lodash.chunk([], 1) // 空数组调用
// => []

lodash.chunk([1234], 3) // 正常调用,不能均分则剩余的单独作为一个数组
// => [[1,2,3],[4]]

lodash.chunk('1234', 3) // 字符串也可以(对象不可以,会返回空数组)
// =>[["1","2","3"],["4"]]

lodash.chunk([1, [2, 2], 3, 4], 3) // 只会分割最外层
// => [[1,[2,2],3],[4]]
2.2 _.compact (常用)

传入一个数组,返回一个过滤掉所有bool值为false的新数组,这个还是比较常用的,取代了filter

lodash.compact([0, 1, false, 2, '', 3]);
// => [1, 2, 3]

lodash.compact('0123') // 对于单个字符串会进行分割处理
// => ["0","1","2","3"]
2.3 _.concat(常用)

字符串连接,返回一个新数组,但是区别是可以无限传数组(理论上如此),官方文档这个例子很有代表性了

var array = [1];
var other = _.concat(array, 2, [3], [[4]]);
 
console.log(other);
// => [1, 2, 3, [4]]
 
console.log(array);
// => [1]
2.4 _.drop , _.dropRight(常用)

本来是可以删除第一个元素,现在扩展成删除指定数量的元素,官网demo完整,直接用啦,dropRight和drop功能和用法一样,只是方向不同

_.drop([1, 2, 3]);
// => [2, 3]
 
_.drop([1, 2, 3], 2);
// => [3]
 
_.drop([1, 2, 3], 5);
// => []
 
_.drop([1, 2, 3], 0);
// => [1, 2, 3]
2.5 _.fill (常用)

等价与splice方法,但是更智能,默认是全部替换
注意: 和splice等价,返回原数组!!!

@para1 目标数组
@para2 替换目标值
@para3 开始下标(可选)
@para4 结束下标(可选)

var array = [1, 2, 3];
_.fill(array, 'a');
console.log(array);
// => ['a', 'a', 'a']
 
_.fill(Array(3), 2);
// => [2, 2, 2]
 
_.fill([4, 6, 8, 10], '*', 1, 3);
// => [4, '*', '*', 10]
2.6 .findIndex,.findLastIndex,_.indexOf(常用,推荐学习)

自从es6推出之后,很多方法方便了开发,但是还是有很多需求解决起来不是很方便,比如这个,比如返回一个数组的下标,再比如返回一个对象数组的某一个对象的下标,我们只能for循环,最多break一下,优化一下次数,所以这个还会很方便的

// 第一个参数需是数组
区别 findIndex和findLastIndex传入的是对象数组
indexOf传入的是普通数组(数组的每个元素都是基本类型(不包括对象和数组))
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值