summaryrefslogtreecommitdiff
path: root/src/utils/objectEquivalence.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils/objectEquivalence.js')
-rw-r--r--src/utils/objectEquivalence.js14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/utils/objectEquivalence.js b/src/utils/objectEquivalence.js
new file mode 100644
index 0000000..e33dd76
--- /dev/null
+++ b/src/utils/objectEquivalence.js
@@ -0,0 +1,14 @@
+const equivalence = (obj1, obj2) => {
+ if (obj1 === null) {
+ return obj1 === null;
+ }
+ return Object.keys(obj1).every(key => {
+ if (obj2[key] === undefined) {
+ return false;
+ }
+ if (typeof obj1[key] === 'object') {
+ return equivalence(obj1[key], obj2[key]);
+ }
+ return obj1[key] === obj2[key];
+ });
+};