UNPKG

489 BJavaScriptView Raw
1export default function shallowEqual(objA, objB) {
2 if (objA === objB) {
3 return true
4 }
5
6 const keysA = Object.keys(objA)
7 const keysB = Object.keys(objB)
8
9 if (keysA.length !== keysB.length) {
10 return false
11 }
12
13 // Test for A's keys different from B.
14 const hasOwn = Object.prototype.hasOwnProperty
15 for (let i = 0; i < keysA.length; i++) {
16 if (!hasOwn.call(objB, keysA[i]) ||
17 objA[keysA[i]] !== objB[keysA[i]]) {
18 return false
19 }
20 }
21
22 return true
23}