摘要:將一個數(shù)組按照一定的長度分割為個數(shù)組。接收一個過濾參數(shù),將不合格的數(shù)組項刪除。將數(shù)組降維進行拉伸。返回數(shù)組的第一項。獲取數(shù)組除最后一項的所有值,相當于刪除最后一項。數(shù)組從項到項切割成一個新數(shù)組。取出數(shù)組的第項。刪除數(shù)組中符合條件的項。
1、_.chunk(array, [size]):將一個數(shù)組按照一定的長度分割為N個數(shù)組。
_.chunk(["a", "b", "c", "d"], 2); // => [["a", "b"], ["c", "d"]]
2、_.compact(array):過濾數(shù)組中布爾值為false的值,如false, null, 0, "", undefined, and NaN。
_.compact([0, 1, false, 2, "", 3]); // => [1, 2, 3]
3、_.concat(array, [values]):數(shù)組連接,返回新數(shù)組。values里的數(shù)組將被降維拉伸。
var array = [1]; var other = _.concat(array, 2, [3], [[4]]); console.log(other); // => [1, 2, 3, [4]]
4、_.difference(array, [values]):將數(shù)組里值不相同的項找到并組成一個新的數(shù)組。
_.difference([2, 1], [2, 3]); // => [1]
相似方法:
_.differenceBy(array, [values], [iteratee=_.identity]):跟difference相似,但可以接收一個迭代函數(shù)。
_.differenceWith(array, [values], [comparator]):跟difference相似,但可以接收一個比較函數(shù)。
5、_.drop(array, [n=1]):刪除數(shù)組的前N項。
_.drop([1, 2, 3], 2); // => [3]
相似方法:
_.dropRight(array, [n=1]):刪除數(shù)組的后N項。
_.dropRightWhile(array, [predicate=_.identity]):接收一個過濾參數(shù),將不合格的數(shù)組項刪除。
_.dropWhile(array, [predicate=_.identity]):用法同上,一個從尾部開始比較,一個從頭部開始比較。
6、_.fill(array, value, [start=0], [end=array.length]):填充數(shù)組,將數(shù)組的第start項到第end項填充為value。
_.fill([4, 6, 8, 10], "*", 1, 3); // => [4, "*", "*", 10]
7、_.findIndex(array, [predicate=_.identity], [fromIndex=0]):從fromIndex開始查找數(shù)組中符合篩選條件的值的下標。
var users = [ { "user": "barney", "active": false }, { "user": "fred", "active": false }, { "user": "pebbles", "active": true } ]; _.findIndex(users, function(o) { return o.user == "barney"; }); // => 0
相似方法:
_.findLastIndex(array, [predicate=_.identity], [fromIndex=array.length-1]):從尾部開始查找。
8、_.flatten(array):將數(shù)組降一個維度進行拉伸。
_.flatten([1, [2, [3, [4]], 5]]); // => [1, 2, [3, [4]], 5]
相似方法:
_.flattenDeep(array):將數(shù)組完全拉伸。
_.flattenDepth(array, [depth=1]):將數(shù)組降n維進行拉伸。
9、_.fromPairs(pairs):將數(shù)組轉(zhuǎn)為key-value的對象。
_.fromPairs([["a", 1], ["b", 2]]); // => { "a": 1, "b": 2 }
互補方法:
_.toPairs(object):將對象轉(zhuǎn)為一個key-value的數(shù)組。
10、_.head(array):返回數(shù)組的第一項。
_.last(array):返回數(shù)組的最后一項。
11、_.indexOf(array, value, [fromIndex=0]):查找某個值在數(shù)組的下標。
_.**lastIndexOf**(array, value, [fromIndex=array.length-1]):從后往前查找。
12、_.initial(array):獲取數(shù)組除最后一項的所有值,相當于刪除最后一項。
_.initial([1, 2, 3]); // => [1, 2]
13、_.intersection([arrays]):找出相同的數(shù)組項。將數(shù)組里值相同的項找到并組成一個新的數(shù)組。
_.intersection([2, 1], [2, 3]);// => [2]
相似方法:
_.intersectionBy([arrays], [iteratee=_.identity]):略。
_.intersectionWith([arrays], [comparator]):略。
互補方法:
_.difference(array, [values]):見上面第4條。
_.differenceBy(array, [values], [iteratee=_.identity]):見上面第4條。
_.differenceWith(array, [values], [comparator]):見上面第4條。
14、_.join(array, [separator=","]):數(shù)組拼接成字符串。類原生.join方法。
_.**reverse**(array):翻轉(zhuǎn)數(shù)組,類似原生。 _.**slice**(array, [start=0], [end=array.length]):數(shù)組從start項到end項切割成一個新數(shù)組。類似原生。
15、_.nth(array, [n=0]):取出數(shù)組的第n項。類似原生array[n]。
16、_.pull(array, [values]):從一個數(shù)組中刪除某些value。
var array = ["a", "b", "c", "a", "b", "c"]; _.pull(array, "a", "c"); console.log(array); // => ["b", "b"]
相似方法:
_.pullAll(array, values):參數(shù)可以接收一個數(shù)組。
_.pullAllBy(array, values, [iteratee=_.identity]):參數(shù)可以接收過濾函數(shù)。
_.pullAllWith(array, values, [comparator]):略。
_.pullAt(array, [indexes]):刪除數(shù)組的下標對應的值。
17、_.remove(array, [predicate=_.identity]):刪除數(shù)組中符合條件的項。
文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/96239.html
摘要:按照一定規(guī)則統(tǒng)計數(shù)量。類似方法從右往左遍歷。如果集合的每一項都符合條件才返回。篩選符合條件的項,返回一個數(shù)組,類似原生的方法。從第位查找分別對集合的每一項調(diào)用指定方法,感覺跟的作用差不多,迭代器調(diào)用方式略有不同。 集合指(Array|Object)。 1、_.countBy(collection, [iteratee=_.identity]):按照一定規(guī)則統(tǒng)計數(shù)量。返回一個對象,key...
摘要:把插入數(shù)組時,返回其應該插入的位置。二進制比較法,并不會改版原數(shù)組。跟類似,但它對有序數(shù)組進行二叉樹查詢。照出數(shù)組中只出現(xiàn)次的項。獲取數(shù)組的前幾項。合并數(shù)組并去重。打包多個數(shù)組的對應項分別形成新數(shù)組。找出不包含的數(shù)組項。兩個數(shù)組的抑或操作。 1、_.sortedIndex(array, value):把value插入數(shù)組時,返回其應該插入的位置。二進制比較法,并不會改版原數(shù)組。從左向右...
摘要:語法速覽與機器學習開發(fā)環(huán)境搭建從屬于筆者的程序猿的數(shù)據(jù)科學與機器學習實戰(zhàn)手冊,如果希望了解更多關于數(shù)據(jù)科學與機器學習知識體系結(jié)構(gòu),推薦閱讀我的技術體系結(jié)構(gòu)圖面向程序猿的數(shù)據(jù)科學與機器學習知識體系及資料合集。 Python語法速覽與機器學習開發(fā)環(huán)境搭建從屬于筆者的程序猿的數(shù)據(jù)科學與機器學習實戰(zhàn)手冊,如果希望了解更多關于數(shù)據(jù)科學與機器學習知識體系結(jié)構(gòu),推薦閱讀2016:我的技術體系結(jié)構(gòu)圖:...
摘要:是什么在前端,我們經(jīng)常會用來實現(xiàn)頁面間的通信,但這種方式更像是點對點的通信。而有時我們希望取消當前頁面的廣播監(jiān)聽一種方式是取消或者修改相應的事件監(jiān)聽另一種簡單的方式就是使用實例為我們提供的方法。 Broadcast Channel 是什么? 在前端,我們經(jīng)常會用postMessage來實現(xiàn)頁面間的通信,但這種方式更像是點對點的通信。對于一些需要廣播(讓所有頁面知道)的消息,用postM...
閱讀 2906·2021-10-14 09:42
閱讀 3205·2019-08-30 15:52
閱讀 3333·2019-08-30 14:02
閱讀 1132·2019-08-29 15:42
閱讀 562·2019-08-29 13:20
閱讀 1186·2019-08-29 12:24
閱讀 508·2019-08-26 10:20
閱讀 707·2019-08-23 18:31