您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“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è)資訊頻道!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。