(objA: any, objB: any)
| 1 | export function shallowEqual(objA: any, objB: any): boolean { |
| 2 | //From: https://github.com/facebook/fbjs/blob/c69904a511b900266935168223063dd8772dfc40/packages/fbjs/src/core/shallowEqual.js |
| 3 | if (is(objA, objB)) { |
| 4 | return true |
| 5 | } |
| 6 | if (typeof objA !== "object" || objA === null || typeof objB !== "object" || objB === null) { |
| 7 | return false |
| 8 | } |
| 9 | const keysA = Object.keys(objA) |
| 10 | const keysB = Object.keys(objB) |
| 11 | if (keysA.length !== keysB.length) { |
| 12 | return false |
| 13 | } |
| 14 | for (let i = 0; i < keysA.length; i++) { |
| 15 | if (!Object.hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) { |
| 16 | return false |
| 17 | } |
| 18 | } |
| 19 | return true |
| 20 | } |
| 21 | |
| 22 | function is(x: any, y: any): boolean { |
| 23 | // From: https://github.com/facebook/fbjs/blob/c69904a511b900266935168223063dd8772dfc40/packages/fbjs/src/core/shallowEqual.js |
searching dependent graphs…