1、_.orderBy(collection, [iteratees=[_.identity]], [orders]):排序。这个方法跟_.sortBy挺像,不同的是_.orderBy可以指定迭代函数排序的方式orders,如果orders未指定,默认采取升序排列。
var users = [ { 'user': 'fred', 'age': 48 }, { 'user': 'barney', 'age': 34 }, { 'user': 'fred', 'age': 40 }, { 'user': 'barney', 'age': 36 }];_.orderBy(users, ['user', 'age'], ['asc', 'desc']); //user升序age降序排列// [// {user: "barney", age: 36},// {user: "barney", age: 34},// {user: "fred", age: 48},// {user: "fred", age: 40}// ]
这个挺实用,尤其在页面里对一系列数据进行各种点击排序的时候。
2、_.partition(collection, [predicate=_.identity]):返回一个数组,将集合分成两部分,符合迭代函数规则的放在第一个数组,不符合迭代规则的放在第二个数组。
var users = [ { 'user': 'barney', 'age': 36, 'active': false }, { 'user': 'fred', 'age': 40, 'active': true }, { 'user': 'pebbles', 'age': 1, 'active': false }];_.partition(users, function(o) { return o.active; });// [// [{user: "fred", age: 40, active: true}],// [{user: "barney", age: 36, active: false},{user: "pebbles", age: 1, active: false}]// ]
啊啊啊,这个也好实用啊,如果orderBy类似于excel的排序功能的话,partition就是excel的筛选功能了。
3、_.reduce(collection, [iteratee=_.identity], [accumulator]):待续。
4、_.reject(collection, [predicate=_.identity]):筛选不符合的项,_.filter的互补方法。
5、_.sample(collection):随机从集合中取出一项。
_.sampleSize(collection, [n=1]):随机从集合中取出N项。6、_.shuffle(collection):对集合随机乱序。
7、_.size(collection):返回集合的长度(或包含多上项)。
8、_.some(collection, [predicate=_.identity]):集合是否包含指定项。
9、_.sortBy(collection, [iteratees=[_.identity]]):排序。