Collections

underscore為集合類對(duì)象提供了一致的接口赊豌。集合類是指Array和Object赖欣,暫不支持Map和Set。

map/filter

Arraymap()filter()類似笛钝,但是underscore的map()filter()可以作用于Object袜刷。當(dāng)作用于Object時(shí)聪富,傳入的函數(shù)為function (value, key),第一個(gè)參數(shù)接收value著蟹,第二個(gè)參數(shù)接收key:
_.map返回的是數(shù)組 _.mapObject返回的是對(duì)象

every / some

當(dāng)集合的所有元素都滿足條件時(shí)墩蔓,_.every()函數(shù)返回true,當(dāng)集合的至少一個(gè)元素滿足條件時(shí)萧豆,_.some()函數(shù)返回true:

max / min

如果集合是Object奸披,max()和min()只作用于value,忽略掉key:_.max({ a: 1, b: 2, c: 3 }); // 3

groupBy

groupBy()把集合的元素按照key歸類涮雷,key由傳入的函數(shù)返回:

var scores = [20, 81, 75, 40, 91, 59, 77, 66, 72, 88, 99];
var groups = _.groupBy(scores, function (x) {
    if (x < 60) {
        return 'C';
    } else if (x < 80) {
        return 'B';
    } else {
        return 'A';
    }
});
// 結(jié)果:
// {
//   A: [81, 91, 88, 99],
//   B: [75, 77, 66, 72],
//   C: [20, 40, 59]
// }

可見groupBy()用來分組是非常方便的

shuffle / sample

shuffle()用洗牌算法隨機(jī)打亂一個(gè)集合:
// 注意每次結(jié)果都不一樣:

_.shuffle([1, 2, 3, 4, 5, 6]); // [3, 5, 4, 6, 2, 1]

sample()則是隨機(jī)選擇一個(gè)或多個(gè)元素:

// 注意每次結(jié)果都不一樣:
// 隨機(jī)選1個(gè):
_.sample([1, 2, 3, 4, 5, 6]); // 2
// 隨機(jī)選3個(gè):
_.sample([1, 2, 3, 4, 5, 6], 3); // [6, 1, 4]

參考

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末阵面,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子洪鸭,更是在濱河造成了極大的恐慌样刷,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,427評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件览爵,死亡現(xiàn)場(chǎng)離奇詭異置鼻,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)蜓竹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門箕母,熙熙樓的掌柜王于貴愁眉苦臉地迎上來储藐,“玉大人,你說我怎么就攤上這事嘶是「撇” “怎么了?”我有些...
    開封第一講書人閱讀 165,747評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵俊啼,是天一觀的道長肺缕。 經(jīng)常有香客問我,道長授帕,這世上最難降的妖魔是什么同木? 我笑而不...
    開封第一講書人閱讀 58,939評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮跛十,結(jié)果婚禮上彤路,老公的妹妹穿的比我還像新娘。我一直安慰自己芥映,他們只是感情好洲尊,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,955評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著奈偏,像睡著了一般坞嘀。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上惊来,一...
    開封第一講書人閱讀 51,737評(píng)論 1 305
  • 那天丽涩,我揣著相機(jī)與錄音,去河邊找鬼裁蚁。 笑死矢渊,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的枉证。 我是一名探鬼主播矮男,決...
    沈念sama閱讀 40,448評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼室谚!你這毒婦竟也來了毡鉴?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,352評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤舞萄,失蹤者是張志新(化名)和其女友劉穎眨补,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體倒脓,經(jīng)...
    沈念sama閱讀 45,834評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡撑螺,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,992評(píng)論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了崎弃。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片甘晤。...
    茶點(diǎn)故事閱讀 40,133評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡含潘,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出线婚,到底是詐尸還是另有隱情遏弱,我是刑警寧澤,帶...
    沈念sama閱讀 35,815評(píng)論 5 346
  • 正文 年R本政府宣布塞弊,位于F島的核電站漱逸,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏游沿。R本人自食惡果不足惜饰抒,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,477評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望诀黍。 院中可真熱鬧袋坑,春花似錦、人聲如沸眯勾。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽吃环。三九已至也颤,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間郁轻,已是汗流浹背歇拆。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留范咨,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,398評(píng)論 3 373
  • 正文 我出身青樓厂庇,卻偏偏與公主長得像渠啊,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子权旷,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,077評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容