使用lodash的isEqual()排除一些属性 [英] Exclude some properties in comparison using isEqual() of lodash
本文介绍了使用lodash的isEqual()排除一些属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用 _.isEqual 来比较2个对象数组(例如:每个对象有10个属性) ,它工作正常。
I am using _.isEqual that compares 2 array of objects (ex:10 properties each object), and it is working fine.
现在有2个属性(创建和删除),我不需要参与比较。
Now there are 2 properties (creation and deletion) that i need not to be a part of comparison.
示例:
var obj1 = {name: "James", age: 17, creation: "13-02-2016", deletion: "13-04-2016"}
var obj2 = {name: "Maria", age: 17, creation: "13-02-2016", deletion: "13-04-2016"}
// lodash method...
_.isEqual(firstArray, secondArray)
推荐答案
您可以使用省略()删除对象中的特定属性。
You can use omit() to remove specific properties in an object.
var result = _.isEqual(
_.omit(obj1, ['creation', 'deletion']),
_.omit(obj2, ['creation', 'deletion'])
);
var obj1 = {
name: "James",
age: 17,
creation: "13-02-2016",
deletion: "13-04-2016"
};
var obj2 = {
name: "Maria",
age: 17,
creation: "13-02-2016",
deletion: "13-04-2016"
};
var result = _.isEqual(
_.omit(obj1, ['creation', 'deletion']),
_.omit(obj2, ['creation', 'deletion'])
);
console.log(result);
<script src="https://cdn.jsdelivr.net/lodash/4.13.1/lodash.min.js"></script>
这篇关于使用lodash的isEqual()排除一些属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文