You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
854 B
53 lines
854 B
function shallowEqualObjects(objA, objB) {
|
|
if (objA === objB) {
|
|
return true;
|
|
}
|
|
|
|
if (!objA || !objB) {
|
|
return false;
|
|
}
|
|
|
|
var aKeys = Object.keys(objA);
|
|
var bKeys = Object.keys(objB);
|
|
var len = aKeys.length;
|
|
|
|
if (bKeys.length !== len) {
|
|
return false;
|
|
}
|
|
|
|
for (var i = 0; i < len; i++) {
|
|
var key = aKeys[i];
|
|
|
|
if (objA[key] !== objB[key] || !Object.prototype.hasOwnProperty.call(objB, key)) {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
function shallowEqualArrays(arrA, arrB) {
|
|
if (arrA === arrB) {
|
|
return true;
|
|
}
|
|
|
|
if (!arrA || !arrB) {
|
|
return false;
|
|
}
|
|
|
|
var len = arrA.length;
|
|
|
|
if (arrB.length !== len) {
|
|
return false;
|
|
}
|
|
|
|
for (var i = 0; i < len; i++) {
|
|
if (arrA[i] !== arrB[i]) {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
export { shallowEqualArrays, shallowEqualObjects };
|
|
|