lodash常用方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lodash常用方法相关的知识,希望对你有一定的参考价值。

参考技术A

1._.get
说明: 其实就是如果没有这个值以后就会返回undefined,而不会像js中没有这个值就会报错

2._.cloneDeep
说明:深度克隆

3._.isEqual

说明:执行深比较来决定两者的值是否相等。

4._.compact(array)
说明:创建一个移除了所有假值的数组。例如:false、null、 0、""、undefined, 以及NaN 都是 “假值”.

5._.truncate([string=\'\'], [options])
说明:截断字符串,如果字符串超出了限定的最大值。 被截断的字符串后面会以 omission 代替,omission 默认是 "..."

7._.uniq(array)

说明:返回不重复的数组。

8. .findIndex(array, [predicate= .identity])

说明:返回符合元素的 index,否则返回 -1。

9._.values(object)
把对象的值转化为数组
相当于es6的Object.values

10._.keys()
把对象的属性转化为数组
相当于es6的Object.keys

11._.forIn()
*相当于es6的Object.enteries

12._.isEmpty判断是否为空

13._.unionBy数组对象去重

14._.debounce函数防抖

lodash常用方法1--查询

1.find

var _ = require(‘lodash‘);
var user1 = {
	name: ‘zhangsan‘,
	height: 180,
	weight: 120
};
var user2 = {
	name: ‘lisi‘,
	height: 180,
	weight: 130
};
var user3 = {
	name: ‘zhangsan‘,
	height: 180,
	weight: 131
};

var users = [user1, user2, user3];
var result = _.find(users, {name: ‘zhangsan‘, weight: 131});
console.log(result);

技术分享

 

2.findIndex

_.findIndex(array, [predicate=_.identity], [thisArg])
该方法类似 _.find,区别是该方法返回的是符合 predicate条件的第一个元素的索引,而不是返回元素本身.

参数 predicate 提供的是一个属性名称,就通过提供的参数使用 _.property方法返回一个回调函数

如果参数thisArg值提供的话,就使用 _.matchesProperty方法匹配相同的属性值,相同返回true,不同返回false

如果参数predicate提供的是一个对象,就使用 _.matches方法匹配相同的元素,相同返回true,不同返回false

参数
array (Array): 需要搜索的数组
[predicate=_.identity] (Function|Object|string): 数组遍历满足的条件
[thisArg] (*): 对应 predicate 属性的值.
返回值
(number): 返回符合查询条件的元素的索引值, 未找到则返回 -1.

var users = [
  { ‘user‘: ‘barney‘,  ‘active‘: false },
  { ‘user‘: ‘fred‘,    ‘active‘: false },
  { ‘user‘: ‘pebbles‘, ‘active‘: true }
];

_.findIndex(users, function(chr) {
  return chr.user == ‘barney‘;
});
// => 0

// using the `_.matches` callback shorthand
_.findIndex(users, { ‘user‘: ‘fred‘, ‘active‘: false });
// => 1

// using the `_.matchesProperty` callback shorthand
_.findIndex(users, ‘active‘, false);
// => 0

// using the `_.property` callback shorthand
_.findIndex(users, ‘active‘);
// => 2

 

3.filter

var result = _.filter(users, function(user){
	return user.weight > 125;
});

技术分享

 

4.pluck  

var users = [
  { ‘user‘: ‘barney‘, ‘age‘: 36 },
  { ‘user‘: ‘fred‘,   ‘age‘: 40 }
];

_.pluck(users, ‘user‘);
// => [‘barney‘, ‘fred‘]

  

 







以上是关于lodash常用方法的主要内容,如果未能解决你的问题,请参考以下文章

lodash 常用方法汇总

lodash 中常用的方法

lodash常用方法1--查询

lodash常用方法

lodash常用方法2--修改

Lodash常用函数