我有两个对象如下:
obj1 = {"a":"firstValue", "b":"secondValue", "c":"thirdValue157das15714daa4"}
obj2 = {"a":"firstValue", "b":"secondValue", "c":"thirdValue1348sdfsf114sfs45fsd"}
我需要比较两个对象,忽略第三个键值对“c”。基本上比较应该返回 true
忽略 'c'
任何人都可以帮助我用 Angular 或 JavaScript 提供乐观的解决方案
提前致谢
最佳答案
简单
obj1.a == obj2.a && obj1.b == obj2.b
或者,如果 a
和 b
将是动态的,则存储 keyToIgnore
var keyToIgnore = [ "c" ];
var isEqual = Object.keys( obj1 ).every( s => keyToIgnore.includes(s) || obj1[ s ] == obj2[ s ] );
演示
var obj1 = {
"a": "firstValue",
"b": "secondValue",
"c": "thirdValue157das15714daa4"
}
var obj2 = {
"a": "firstValue",
"b": "secondValue",
"c": "thirdValue1348sdfsf114sfs45fsd"
}
var keyToIgnore = [ "c" ];
var fnCompare = ( obj1, obj2 ) => Object.keys(obj1).every(s => keyToIgnore.includes(s) || obj1[s] == obj2[s]);
console.log( fnCompare( obj1, obj2 ) )
关于javascript - 比较两个对象忽略一个键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48882244/