UnderScore的使用实例记录
集合操作
_.range(),主要用于區間的獲取操作。參數說明:(param1):范圍上限,(param1,param2):起始及結束范圍,(param1,param2,param3):起始結束范圍,正數則為區間跨度,-1則為:負數區間跨度。
_.range(10); => [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] _.range(1, 11); => [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] _.range(0, 30, 5); => [0, 5, 10, 15, 20, 25] _.range(0, -10, -1); => [0, -1, -2, -3, -4, -5, -6, -7, -8, -9] _.range(0); => []_.each(list,function(c,i){}),主要用于遍歷每個元素進行相應處理操作。參數說明:list為具體遍歷的數組,function(c,i)為具體的遍歷情況處理,c為具體遍歷實體參數,i為具體的index
_.each([1, 2, 3], alert); => alerts each number in turn... _.each({one: 1, two: 2, three: 3}, alert); => alerts each number value in turn..._.filer(list,function(c){}),主要用于根據條件進行過濾相關數據操作。參數說明:list為具體遍歷的數組,function(c)為具體執行的過濾操作。需要返回具體的數據。
var evens = _.filter([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); => [2, 4, 6]_.map(list,function(c){}),主要用于根據元素進行相應的操作。參數說明:list為具體遍歷的數組,function(c)為具體執行的對應的操作。需要返回具體的數據。
_.map([1, 2, 3], function(num){ return num * 3; }); => [3, 6, 9] _.map({one: 1, two: 2, three: 3}, function(num, key){ return num * 3; }); => [3, 6, 9]_.reduce(list,function(c,m){var d ? m.push(d) ?return m},[]),主要用于對列表元素進行格式轉換等處理操作,并生成全新結果并返回。參數說明:list為具體遍歷的數組,function(c)為具體執行的組裝數據的操作,并最終需要進行返回新的數據結果。
var sum = _.reduce([1, 2, 3], function(memo, num){ return memo + num; }, 0); => 6?_.find(list,function(c){}),主要用于根據條件查找相應的數據中匹配的對象。參數說明:list為具體遍歷的數組,function(c)為具體查找的條件規則。
var even = _.find([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); => 2_.some(list,function(c){}),主要用于查找是否存在某個數據在數組中是否存在。參數說明:list為具體遍歷的數組,function(c)為存在條件,返回true或false。
_.some([null, 0, 'yes', false]); => true_.groupBy(list,param),主要用于根據分組字段對數據集合進行分組。參數說明:list為具體遍歷的數組,param為分組字段或分組方法,使用單引號包含即可,返回具體分組后的數據。
_.groupBy([1.3, 2.1, 2.4], function(num){ return Math.floor(num); }); => {1: [1.3], 2: [2.1, 2.4]}_.groupBy(['one', 'two', 'three'], 'length'); => {3: ["one", "two"], 5: ["three"]}_.sortBy(list,function(c){}),主要用于對數組進行排序。參數說明:list為具體遍歷的數組,function(c)為具體排序的參數,默認為從小到大。
_.sortBy([1, 2, 3, 4, 5, 6], function(num){ return Math.sin(num); }); => [5, 4, 6, 3, 1, 2]_.indexBy(list,param),主要用于對數據進行索引。參數說明:list為具體遍歷的數組,param為具體的索引字段或方法。
var stooges = [{name: 'moe', age: 40}, {name: 'larry', age: 50}, {name: 'curly', age: 60}]; _.indexBy(stooges, 'age'); => {"40": {name: 'moe', age: 40},"50": {name: 'larry', age: 50},"60": {name: 'curly', age: 60} }?_.values(list),主要用于將對象轉換為數組。參數說明:list為具體的對象。
_.values({one: 1, two: 2, three: 3}); => [1, 2, 3]?_.reduceRight(list,function(a,b){}),主要用于重新組裝數據,但是與reduce不同的是,對數組的遍歷是從末尾開始執行的。參數說明:list為具體的數據集合,function(a,b)為具體的組裝的參數和輸出參數。
var list = [[0, 1], [2, 3], [4, 5]]; var flat = _.reduceRight(list, function(a, b) { return a.concat(b); }, []); => [4, 5, 2, 3, 0, 1]_.where(list,{param}),主要用于過濾數據。參數說明:list為具體的數據集合,param為具體的過濾條件。
_.where(listOfPlays, {author: "Shakespeare", year: 1611}); => [{title: "Cymbeline", author: "Shakespeare", year: 1611},{title: "The Tempest", author: "Shakespeare", year: 1611}]_.findWhere(list,{param}),主要用于查找過濾操作。參數說明:list為具體的數據集合,param為具體的過濾條件。
_.findWhere(publicServicePulitzers, {newsroom: "The New York Times"}); => {year: 1918, newsroom: "The New York Times",reason: "For its public service in publishing in full so many official reports,documents and speeches by European statesmen relating to the progress andconduct of the war."}_.reject(list,function(c){}),主要用于丟棄規則數據的類似過濾操作。參數說明:list為具體的數據集合,function(c)為具體的丟棄規則。
var odds = _.reject([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); => [1, 3, 5]_.every(list,function(c){}),主要用于數據的匹配,要求每個元素必須匹配,缺一不可。參數說明:list為具體的數據集合,function(c)為具體的匹配的規則。
_.every([true, 1, 'yes',!1],function(c){return c>1}); false _.every([true, 1, 'yes',!1],function(c){return c=1}); true_.contains(list,function(c){}),主要用于檢查列表中是否包含元素。參數說明:list為具體的數據集合,function(c)為具體的包含的規則。
_.contains([1, 2, 3], 3); => true_.invoke(list,methodName,*arguments),主要用于調用相關的方法。參數說明:list為具體的數據集合,可為多個數據集合執行同一個方法,methodName具體的執行的方法名稱,arguments為具體的參數
_.invoke([[5, 1, 7], [3, 2, 1]], 'sort'); => [[1, 5, 7], [1, 2, 3]]?_.pluck(list,params),主要用于列表中的對應屬性的數據獲取。參數說明:list為具體的數據集合,params為具體的屬性名稱。
var stooges = [{name: 'moe', age: 40}, {name: 'larry', age: 50}, {name: 'curly', age: 60}]; _.pluck(stooges, 'name'); => ["moe", "larry", "curly"]_.max(list,function(c){}),主要用于列表數據的最大值的獲取。參數說明:list為具體的數據集合,function(c)為具體的獲取的最大值的規則。
var stooges = [{name: 'moe', age: 40}, {name: 'larry', age: 50}, {name: 'curly', age: 60}]; _.max(stooges, function(stooge){ return stooge.age; }); => {name: 'curly', age: 60};_.max(list,function(c){}),主要用于列表數據的最小值的獲取。參數說明:list為具體的數據集合,function(c)為具體的獲取的最大值的規則。
var numbers = [10, 5, 100, 2, 1000]; _.min(numbers); => 2_.countBy(list,function(c){}),主要用于統計集合中的某個數量。參數說明:list為具體的數據集合,function(c)為具體的統計技術的規則。
_.countBy([1, 2, 3, 4, 5], function(num) {return num % 2 == 0 ? 'even': 'odd'; }); => {odd: 3, even: 2}_.shuffle(list),主要用于對數據集合進行重新隨機排序。參數說明:list為具體的數據集合。
_.shuffle([1, 2, 3, 4, 5, 6]); => [4, 1, 6, 3, 5, 2]調用多次顯示結果如下(從英文意思看,類似于洗牌的意思。):
_.sample(list,param),主要用于從對象集合中隨機取出一個數據。參數說明:list為具體的數據集合,param可以為取出隨機數的個數。
_.sample([1, 2, 3, 4, 5, 6]); => 4_.sample([1, 2, 3, 4, 5, 6], 3); => [1, 6, 2]_.toArray(list),主要用于將對象轉換為數組格式。參數說明:list為具體的數據集合。
var stooges = [{name: 'moe', age: 40}, {name: 'larry', age: 50}, {name: 'curly', age: 60}];?Object?Object
_.size(list),主要用于獲取數據集合的大小。參數說明:list為具體的數據集合。
_.size([null, 2, 3, 4, 5, 6]); 6 _.size([null, underfined, 3, 4, 5, 6]); ReferenceError: underfined is not defined _.size([null, underfined, 0, 4, 5, 6]); ReferenceError: underfined is not defined _.size([null, false,0, 4, 5, 6]); 6?數組操作
_.union(*array),主要用于數組的聯合,去除重復的數據。參數說明:array為具體的數組。
_.union([1, 2, 3], [101, 2, 1, 10], [2, 1]); => [1, 2, 3, 101, 10]_.first(array,n),主要用于取出數組中的前n個數據。參數說明:array為具體的數組,n為取出的數據的個數。不填寫n則為默認1個。
_.first([5, 4, 3, 2, 1]); => 5_.initial(array,n),主要用于返回數組數據并去除末尾n個數。參數說明:array為具體的數組,n為要去掉末尾的數據個數。默認n為1個。
_.last(array,n),主要用于取出末尾n個數據。參數說明:array為具體的數組,n為要取出末尾的數據個數。默認n為1個。
_.last([5, 4, 3, 2, 1]); => 1_.rest(array,index),主要用于在array中從index索引位置,開始取出數組的余下數據。參數說明:array為具體的數組,index為具體的開始索引位置。默認index為0
_.rest([5, 4, 3, 2, 1]); => [4, 3, 2, 1]_.compact(array),主要用于對數組array進行false,0,null等值的過濾。參數說明:array為具體要過濾的數組。
_.compact([0, 1, false, 2, '', 3]); => [1, 2, 3]?_.uniq(array,property),主要用于對數組進行去除重復元素操作。參數說明:array為要去重復的數組,property為具體的字段名稱。
_.uniq([1, 2, 1, 3, 1, 4]); => [1, 2, 3, 4]?
轉載于:https://www.cnblogs.com/diaosizhang/p/3910063.html
總結
以上是生活随笔為你收集整理的UnderScore的使用实例记录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 东北三省面积
- 下一篇: 安卓学习-界面-View的自定义