lodash中關於Array的幾個方法

_.difference(array,[values])數組

顧名思義,difference的意思是差別。通俗來說,這個方法就是找數組的差別。在_.difference方法的參數中,有兩個參數,第一個是須要排除差別的數組,第二個參數是要排除的值的數組。經過查找array數組中,是否有要排除的值的數組,從而排除這些值。最後的返回值是排除事後的新數組。spa

例如:rest

_difference([1,2,3,4,5],[2,4])it

return new_array=[1,3,5]方法


_.first(array)margin

獲取數組中的第一個元素。這個方法還有一個別名就是_.headdi

此方法的參數是一個數組,將數組傳入到_.first方法中,返回的值就是此數組中的第一個元素。new

例如:return

_.first([1,2,3,4,5])參數

return [1]

當傳入的是空數組時,由於數組中沒有任何元素,因此return undefined


_.pull(array,[values])

用於刪除數組中包含的第二個參數及之後的值。

此方法的第一個參數須要傳入一個數組,後面的參數用來傳入須要被刪除的元素在此數組中。

它的返回值是array數組刪除後的數組。而不是一個新數組。

有一個和_.pull方法相似的方法,是_.without(array,[values])方法,此方法和_.pull方法最大的差異是,它返回的是一個新的數組,而不是原來的數組。

例如:

var array=[1,2,3,4,5]

_.pull(array,2,4)

return array=[1,3,5]

var array1=[6,7,8,9,10]

_.without(array,7,9)

return new_array[6,8,10]

注意在使用的過程當中區分_.pull _.without的差別。


_.take(array,[n=1])

用於截取數組中從第一個元素開始,截取到第n個元素。

這個方法能夠獲取數組中的前n個元素。它的返回值是截取後的數組。須要注意的是,假如給的第二個參數爲0的話,說明截取第0個元素,這樣截取出來的數組是一個空數組。另外一個須要注意的點是,假如數組的長度小於n的值,那麼截取全部的數組的元素的值並返回出來。

例如:

n=0

var array=[1,2,3,4,5];

_.take(array,0);

return array=[];

n大於原數組的長度時

var array=[1,2,3,4,5];

_.take(array,8);

return array=[1,2,3,4,5];

n大於0切小於數組的長度時

var array=[1,2,3,4,5]

_.take(array,3)

return array=[1,2,3]


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

此方法跟_.take方法相似,不一樣的是,此方法能夠指定開始位置,而不是從第一個元素開始,此方法較_.take方法更靈活一些。須要注意的是,開始和結束位置指的是元素的下標。

例如:

var array=[1,2,3,4,5]

_.slice(array,2,4)

return array=[3,4]



_.rest(array)

此方法是獲取數組中,除第一個元素之外的全部元素。它的返回值是除第一個元素之外的全部元素的數組。此方法還有另外一個同樣的方法是_.tail,二者的用法同樣。

例如:

var array=[1,2,3,4,5]

_.rest(array)

return array=[2,3,4,5]


_.xor([arrays])

此方法是找出參數數組中,不一樣的元素並存放到一個新的數組中。參數能夠是一個,也能夠是多個,當只有一個數組時,返回的是當前數組。它的返回值是一個新的數組,裏面存放的參數數組中不一樣的元素。

例如:

var array1=[1,2,3]

var array2=[2,3,4,5]

_.xor(array1,array2)

return new_array=[1,4,5]

相關文章
相關標籤/搜索