2018/12/21--Javascript判断两个对象是否相等
lq920320 opened this issue · comments
var objA = {
id: 1,
name: "AAA"
};
var objB = {
id: 1,
name: "AAA"
};
/**
* 判断两个对象是否相等
*/
function isEquivalent(a, b) {
// Create arrays of property names
var aProps = Object.getOwnPropertyNames(a);
var bProps = Object.getOwnPropertyNames(b);
// If number of properties is different,
// objects are not equivalent
if (aProps.length != bProps.length) {
return false;
}
for (var i = 0; i < aProps.length; i++) {
var propName = aProps[i];
// If values of same property are not equal,
// objects are not equivalent
if (a[propName] !== b[propName]) {
return false;
}
}
// If we made it this far, objects
// are considered equivalent
return true;
}
// true
console.log(isEquivalent(objA, objB));