溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Underscore之Array的示例分析

發(fā)布時間:2021-09-06 09:58:36 來源:億速云 閱讀:145 作者:小新 欄目:web開發(fā)

這篇文章主要為大家展示了“Underscore之Array的示例分析”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Underscore之Array的示例分析”這篇文章吧。

underscore為Array提供了許多工具類方法,可以更方便快捷地操作Array。

first / last

顧名思義,這兩個函數(shù)分別取第一個和最后一個元素:

'use strict';
var arr = [2, 4, 6, 8];
_.first(arr); // 2
_.last(arr); // 8

flatten

flatten()接收一個Array,無論這個Array里面嵌套了多少個Array,flatten()最后都把它們變成一個一維數(shù)組:

'use strict';

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

zip / unzip

zip()把兩個或多個數(shù)組的所有元素按索引對齊,然后按索引合并成新數(shù)組。例如,你有一個Array保存了名字,另一個Array保存了分數(shù),現(xiàn)在,要把名字和分數(shù)給對上,用zip()輕松實現(xiàn):

'use strict';

var names = ['Adam', 'Lisa', 'Bart'];
var scores = [85, 92, 59];
_.zip(names, scores);
// [['Adam', 85], ['Lisa', 92], ['Bart', 59]]

unzip()則是反過來:

'use strict';
var namesAndScores = [['Adam', 85], ['Lisa', 92], ['Bart', 59]];
_.unzip(namesAndScores);
// [['Adam', 'Lisa', 'Bart'], [85, 92, 59]]

object

有時候你會想,與其用zip(),為啥不把名字和分數(shù)直接對應成Object呢?別急,object()函數(shù)就是干這個的:

'use strict';

var names = ['Adam', 'Lisa', 'Bart'];
var scores = [85, 92, 59];
_.object(names, scores);
// {Adam: 85, Lisa: 92, Bart: 59}

注意_.object()是一個函數(shù),不是JavaScript的Object對象。

range

range()讓你快速生成一個序列,不再需要用for循環(huán)實現(xiàn)了:

'use strict';

// 從0開始小于10:
_.range(10); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

// 從1開始小于11:
_.range(1, 11); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

// 從0開始小于30,步長5:
_.range(0, 30, 5); // [0, 5, 10, 15, 20, 25]

// 從0開始大于-10,步長-1:
_.range(0, -10, -1); // [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]

以上是“Underscore之Array的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI