Tidy up equals snippet

This commit is contained in:
Chalarangelo
2021-09-08 15:02:06 +03:00
parent ac4aa8ab55
commit a4822e8402

View File

@ -15,13 +15,18 @@ Performs a deep comparison between two values to determine if they are equivalen
```js
const equals = (a, b) => {
if (a === b) return true;
if (a instanceof Date && b instanceof Date)
return a.getTime() === b.getTime();
if (!a || !b || (typeof a !== 'object' && typeof b !== 'object'))
return a === b;
if (a.prototype !== b.prototype) return false;
let keys = Object.keys(a);
const keys = Object.keys(a);
if (keys.length !== Object.keys(b).length) return false;
return keys.every(k => equals(a[k], b[k]));
};
```