MCPcopy Index your code
hub / github.com/ReactTooltip/react-tooltip / deepEqual

Function deepEqual

src/utils/deep-equal.ts:5–32  ·  view source on GitHub ↗
(object1: unknown, object2: unknown)

Source from the content-addressed store, hash-verified

3}
4
5const deepEqual = (object1: unknown, object2: unknown): boolean => {
6 if (object1 === object2) {
7 return true
8 }
9
10 if (Array.isArray(object1) && Array.isArray(object2)) {
11 if (object1.length !== object2.length) {
12 return false
13 }
14 return object1.every((val, index) => deepEqual(val, object2[index]))
15 }
16
17 if (Array.isArray(object1) !== Array.isArray(object2)) {
18 return false
19 }
20
21 if (!isObject(object1) || !isObject(object2)) {
22 return object1 === object2
23 }
24
25 const keys1 = Object.keys(object1)
26 const keys2 = Object.keys(object2)
27 if (keys1.length !== keys2.length) {
28 return false
29 }
30
31 return keys1.every((key) => deepEqual(object1[key], object2[key]))
32}
33
34export default deepEqual

Callers 1

utils.spec.jsFile · 0.85

Calls 1

isObjectFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…