lodash工具库(js)

一、中文网地址

https://www.lodashjs.com/

二、简介

1.lodash是啥?

  lodash是一个一致性、模块化、高性能的js使用工具库,

2.为什么选择lodash?

  lodash通过降低array、number、objectss、string等的使用难度从而让js变得更简单。lodash的模块化方法非常适用于:

  • 遍历array、object和string
  • 对值进行操作和检测
  • 创建符合功能和函数

三、案例

1._chunk(将...拆分成多少份)

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

将数组array拆分成多个size长度的区块,并将这些区块组成新数组。如果array无法被分割成全部等长的区块,那么最后剩下的元素将组成一个区块。

参数:

  1.array需要处理的数组

  2.【size=1】(number):每个数组区块的长度

返回:返回一个包含拆分区块的长度

例子:

_.chunk(['a','b','c','d'],2);
//=>[['a','b'],['c','d']]
_.chunk(['a','b','c','d'],3);
//=>[['a','b','c'],['d']];

2._.remove

_.remove(array,[predicate=_.identity])

移除数组中predicate返回为真值的所有元素,并返回移除元素组成新数组

参数:

  1.array:要修改的数组

  2.【predicate=_.idebtity】:每次迭代调用的函数

返回:返回移除元素组成的新数组

例子:

var array=[1,2,3,4];
var evens=_.remove(array,function(item){return n%2==0});
console.log(array)
//=>[1,3]
console.log(evens);
//=>[2,4]

3._isEmpty

_.isEmpty(value)

检查value是否为一个空对象,集合,映射或者set.判断的依据是除非有枚举属性的对象,length大于0的arguments Object,array,string

对象如果被认为为空,那么他们没有自己的可枚举属性的对象。

类数组值,比如arguments对象,array,buffer,string或者jQuery集合的length为零,被认为是空。类似的,map(映射)和set的size为0,被认为是空。

参数:

  1.value(*)要检查的值

返回:

  如果value为空,那么返回true,否则返回false.

例子

_.isEmpty(null);
// => true
 
_.isEmpty(true);
// => true
 
_.isEmpty(1);
// => true
 
_.isEmpty([1, 2, 3]);
// => false
 
_.isEmpty({ 'a': 1 });
// => false

 4._cloneDeep(value)

这个方法类似于_.clone,除了他会递归拷贝value.(注:也叫深拷贝)。

参数

  1.value(*):要深拷贝的值

返回

  返回拷贝后的值。

例子

var objects=[{'a':1},{'b',:2}];
var deep=_.cloneDeep(objects);
console.log(deep[0]===objects[0]);
//=>false

 

posted @ 2022-02-07 16:35  前端乔  阅读(681)  评论(0编辑  收藏  举报