LoDash 中文版之 Array

2021-08-27 20:03:33 字數 4755 閱讀 2973

學習lodash,發現基本都是英文**,對於初學者十分不方便。我自己總結了一下,現與大家共享,有錯誤處或不妥之處,請大神給予意見。

1.

_.chunk(['a', 'b', 'c', 'd'], 2);

// → [['a', 'b'], ['c', 'd']]

_.chunk(['a', 'b', 'c', 'd'], 3);

// → [['a', 'b', 'c'], ['d']]

按指定長度合併陣列中的元素

2.

_.compact([0, 1, false, 2, '', 3]);

// → [1, 2, 3]

刪除陣列元素中的 虛假值(false, null, 0, "", undefined,  nan are falsey)

3.

_.difference([1, 2, 3], [5, 2, 10]);

// → [1, 3]

在第乙個陣列元素中刪除與第二個陣列相同的元素

4.

_.intersection([1, 2, 3], [5, 2, 1, 4], [2, 1]);

// → [1, 2]

找到幾個陣列中共有的元素,並輸出。

5.

_.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]

輸出刪除的指定位置元素(預設值為1),如果為0則返回原陣列。

6.

_.dropright([1, 2, 3]);

// → [1, 2]

_.dropright([1, 2, 3], 2);

// → [1]

_.dropright([1, 2, 3], 5);

// →

_.dropright([1, 2, 3], 0);

// → [1, 2, 3]

同上 只是從右邊開始。

7.

_.droprightwhile([1, 2, 3], function(n) );

// → [1]

var users = [

, ,

];// using the "_.property" callback shorthand

_.pluck(_.droprightwhile(users, 'active'), 'user');

// → ['barney']

// using the "_.matches" callback shorthand

_.pluck(_.droprightwhile(users, ), 'user');

// → ['barney', 'fred']

根據條件(users, 'active'),查詢'user'中不滿足條件的物件。

根據(users, ),查詢'user'中不滿足條件的物件。

8.

var users = [

, ,

];_.findindex(users, function(chr) );

// → 0

// using the "_.matches" callback shorthand

_.findindex(users, );

// → 2

// using the "_.property" callback shorthand

_.findindex(users, 'active');

// → 1

輸出反向滿足條件的物件個數

9.

var users = [

, ,

];_.findlastindex(users, function(chr) );

// → 2

// using the "_.matches" callback shorthand

_.findlastindex(users, );

// → 1

// using the "_.property" callback shorthand

_.findlastindex(users, 'active');

// → 0

滿足條件的物件個數

10.

_.first([1, 2, 3]);

// → 1

_.first();

// → undefined

輸出第乙個元素

_.rest([1, 2, 3]);

// → [2, 3]

輸出除第乙個元素的剩下元素。

_.last([1, 2, 3]);

// → 3

輸出最後乙個元素。

_.initial([1, 2, 3]);

// → [1, 2]

輸出除最後乙個元素的剩下元素。

11.

_.flatten([1, [2], [3, [[4]]]]);

// → [1, 2, 3, [[4]]];

就是輸出一下這個陣列

// using `isdeep`

_.flatten([1, [2], [3, [[4]]]], true);

// → [1, 2, 3, 4];

用 isdeep 把各個遞迴中的元素,放在一層遞迴中

12.1

_.indexof([1, 2, 3, 1, 2, 3], 2);

// → 1

// using `fromindex`

_.indexof([1, 2, 3, 1, 2, 3], 2, 3);

// → 4

// performing a binary search

_.indexof([4, 4, 5, 5, 6, 6], 5, true);

// → 2

,後資料首次出現的位置,計數從0開始。

12.2

_.sortedlastindex([4, 4, 5, 5, 6, 6], 5); //

// → 4

其出現的最後位置

13.

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

_.pull(array, 2, 3);

console.log(array);

// → [1, 1]

原陣列刪除2, 3後輸出

14.

var array = [5, 10, 15, 20];

var evens = _.pullat(array, [1, 3]);

console.log(array);

// → [5, 15]

console.log(evens);

// → [10, 20]

相對於_.pull多加個情況,但功能與其相反。

15.

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

var evens = _.remove(array, function(n) );

console.log(array);

// → [1, 3]

console.log(evens);

// → [2, 4]

一看便知

16.

_.sortedindex([30, 50], 40);

// → 1

_.sortedindex([4, 4, 5, 5, 6, 6], 5);

// → 2

var dict = };

// using an iteratee function

_.sortedindex(['thirty', 'fifty'], 'forty', function(word) , dict);

// → 1

// using the "_.property" callback shorthand

_.sortedindex([, ], , 'x');

// → 1

輸出其插入的位置,但會自動判斷比較前後。

17.

_.takeright([1, 2, 3], 2);

// → [2, 3]

_.takeright([1, 2, 3], 5);

// → [1, 2, 3]

_.takeright([1, 2, 3], 0);

// →

據[1, 2, 3],建立乙個新的陣列(,後的數字決定從開始到哪個數字結束,沒有的省略,預設值為 1)。

18.

var zipped = _.zip(['fred', 'barney'], [30, 40], [true, false]);

// → [['fred', 30, true], ['barney', 40, false]]

_.unzip(zipped);

// → [['fred', 'barney'], [30, 40], [true, false]]

從兩個陣列的對應位置上取出資料並存放到新的陣列中(乙個位置乙個陣列)。

其實就是_.zip。

19.

_.without([1, 2, 1, 0, 3, 1, 4], 0, 1);

// → [2, 3, 4]

去掉 0 1

_.xor([1, 2, 3], [5, 2, 1, 4]);

// → [3, 5, 4]

_.xor([1, 2, 5], [2, 3, 5], [3, 4, 5]);

// → [1, 4, 5]

都有的留下,就乙個有的留下,其餘刪掉,並合併。

Windows Home Server 中文版來了

簡體和正體中文版windows home server將在2008年下半年全面推出了!6月5日,windows home server產品部總經理charlie kindel在台灣宣布了這個訊息。此次中文版在台北computex展出,合作夥伴包括技嘉 gigabyte 威盛 via 啟基 wnc 和...

lodash常用api之Array陣列方法篇

flattendeep 1,2,3,4 5 1,2,3,4,5 indexof 3,3 1 1具體引數 array array 需要查詢的陣列。value 需要查詢的值。fromindex 0 number 開始查詢的位置,預設從0開始 difference 1,2,3,4 8,4 1,2,3 wi...

ilove中文 iLovePDF中文版

軟體介紹 ilovepdf是一款pdf檔案處理工具,可以幫助使用者對pdf檔案進行壓縮 拆分 合併 轉換 編輯等處理,還可以轉換成其它格式,支援pdf檔案瀏覽及加密,是一款很好的pdf檔案工具。軟體特色 離線操作 無需網路連線。你可以隨時隨地進行pdf檔案的壓縮 合併 拆分 轉換和編輯。輕鬆閱讀 使...