lodash 常用摘要

 

lodash
Array
1._compact(array),剔除数组中的false值,包括0,false,null,undefined,NaN,'';
let a = _.compact([ 0 , 1 , false , null , undefined , NaN , '' , 4 ]);
//1,4
2._.concat(value,value,...),返回新的连接后的数组。
var array = [ 1 ];
var other1 = _. concat (array, 2 ,[ 3 ], [[4]] );//[ 1 , 2 , 3 ,[ 4 ]]
var other2 = _. concat ( 2 , [ 3 ], [[4]] );//[ 2 , 3 ,[ 4 ]]
3._.drop(array,n),n默认为1,表示从第n个位置开始截取数组
_.drop([ 1 , 2 , 3 ]);
// => [2, 3]
 
_.drop([ 1 , 2 , 3 ], 2 );
// => [3]
 
_.drop([ 1 , 2 , 3 ], 5 );
// => []
 
_.drop([ 1 , 2 , 3 ], 0 );
// => [1, 2, 3]
4._.findIndex 按条件查找索引值,找到多条返回第一个index,找不到返回-1
var users = [
{ 'user' : 'barney' , 'active' : false },
{ 'user' : 'fred' , 'active' : false },
{ 'user' : 'pebbles' , 'active' : true }
];
 
_.findIndex(users, function (o) { return o.user == 'barney' ; });
// => 0
 
// The `_.matches` iteratee shorthand.
_.findIndex(users, { 'user' : 'fred' , 'active' : false });
// => 1
 
// The `_.matchesProperty` iteratee shorthand.
_.findIndex(users, [ 'active' , false ]);
// => 0
 
// The `_.property` iteratee shorthand.
_.findIndex(users, 'active' );
// => 2
5._.join(array,'~')
将数组中的所有元素转换为由分隔符连接的字符串; 默认以‘,’连接
let tmpJoin = _. join ([ 'a' , 'b' , 'c' ]);
//a,b,c
 
Collection
1._.forEach
_.forEach([ 1 , 2 ], function ( value ) {
console .log(value);
});
 
_.forEach({ 'a' : 1 , 'b' : 2 }, function ( value, key ) {
console .log(key);
});
 
2._.filter
返回数组
var users = [
{ 'user' : 'barney' , 'age' : 36 , 'active' : true },
{ 'user' : 'fred' , 'age' : 40 , 'active' : false }
];
 
_.filter(users, function (o) { return !o.active; });
// => objects for ['fred']
 
// The `_.matches` iteratee shorthand.
_.filter(users, { 'age' : 36 , 'active' : true });
// => objects for ['barney']
 
// The `_.matchesProperty` iteratee shorthand.
_.filter(users, [ 'active' , false ]);
// => objects for ['fred']
 
// The `_.property` iteratee shorthand.
_.filter(users, 'active' );
// => objects for ['barney']
3._.find
返回匹配的一条数据,或者undefined
var users = [
{ 'user' : 'barney' , 'age' : 36 , 'active' : true },
{ 'user' : 'fred' , 'age' : 40 , 'active' : false },
{ 'user' : 'pebbles' , 'age' : 1 , 'active' : true }
];
 
_. find (users, function (o) { return o.age < 40 ; });
// => object for 'barney'
 
// The `_.matches` iteratee shorthand.
_. find (users, { 'age' : 1 , 'active' : true });
// => object for 'pebbles'
 
// The `_.matchesProperty` iteratee shorthand.
_. find (users, [ 'active' , false ]);
// => object for 'fred'
 
// The `_.property` iteratee shorthand.
_. find (users, 'active' );
// => object for 'barney'
4._.groupBy
_ .groupBy([ 6.1 , 4.2 , 6.3 ], Math .floor);
// => { '4' : [ 4.2 ], '6' : [ 6.1 , 6.3 ] }
 
// The `_.property` iteratee shorthand.
_ .groupBy([ 'one' , 'two' , 'three' ], 'length' );
// => { '3' : [ 'one' , 'two' ], '5' : [ 'three' ] }
5._.orderBy
以某个字段按照某种顺序排序,排序字段多个时,以第一个字段为主
var users = [
{ 'user' : 'fred' , 'age' : 48 },
{ 'user' : 'barney' , 'age' : 34 },
{ 'user' : 'fred' , 'age' : 40 },
{ 'user' : 'barney' , 'age' : 36 }
];
_ .orderBy(users, [ 'user' , 'age' ], [ 'asc' , 'desc' ]);
// => objects for [[ 'barney' , 36 ], [ 'barney' , 34 ], [ 'fred' , 48 ], [ 'fred' , 40 ]]
6._.sortBy
按照升序排序
var users = [
{ 'user' : 'fred' , 'age' : 48 },
{ 'user' : 'barney' , 'age' : 36 },
{ 'user' : 'fred' , 'age' : 40 },
{ 'user' : 'barney' , 'age' : 34 }
];
 
_ .sortBy(users, [function(o) { return o.user; }]);
// => objects for [[ 'barney' , 36 ], [ 'barney' , 34 ], [ 'fred' , 48 ], [ 'fred' , 40 ]]
 
_ .sortBy(users, [ 'user' , 'age' ]);
// => objects for [[ 'barney' , 34 ], [ 'barney' , 36 ], [ 'fred' , 40 ], [ 'fred' , 48 ]]
 
7._.size
获取collection(Array,Object,String)的长度
_. size ([ 1 , 2 , 3 ]);
// => 3
 
_. size ({ 'a' : 1 , 'b' : 2 });
// => 2
 
_. size ( 'pebbles' );
// => 7
 
Lang
1._.isArray
_ .isArray([ 1 , 2 , 3 ]);
// => true
 
_ .isArray(document.body.children);
// => false
 
_ .isArray( 'abc' );
// => false
 
_ .isArray( _ .noop);
// => false
 
Object
1._.has
检查对象是否有某属性
var object = { 'a' : { 'b' : 2 } };
var other = _ .create({ 'a' : _ .create({ 'b' : 2 }) });
 
_ .has(object, 'a' );
// => true
 
_ .has(object, 'a.b' );
// => true
 
_ .has(object, [ 'a' , 'b' ]);
// => true
 
_ .has(other, 'a' );
// => false
 

你可能感兴趣的:(lodash 常用摘要)