We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent d8192aa commit 307a56cCopy full SHA for 307a56c
packages/lib/src/equals/shallowEquals.ts
@@ -1,3 +1,18 @@
1
-export const shallowEquals = (a: unknown, b: unknown) => {
2
- return a === b;
3
-};
+export function shallowEquals(objA: unknown, objB: unknown): boolean {
+ if (objA === objB) return true;
+
4
+ if (objA == null || objB == null) return false;
5
6
+ const keysOfA = Object.keys(objA);
7
+ const keysOfB = Object.keys(objB);
8
9
+ if (keysOfA.length !== keysOfB.length) return false;
10
11
+ for (const key of keysOfA) {
12
+ if ((objA as Record<string, unknown>)[key] !== (objB as Record<string, unknown>)[key]) {
13
+ return false;
14
+ }
15
16
17
+ return true;
18
+}
0 commit comments