1. 程式人生 > 其它 >lodash工具庫(js)

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
勤學似春起之苗,不見其增,日有所長; 輟學如磨刀之石,不見其損,日所有虧!