Доразобрался чуть, подскажите, как можно улучшить?
function deepEqual(a, b) {
if (
a === null ||
typeof a !== 'object' ||
b === null ||
typeof b !== 'object'
) {
return a === b
}
if (Object.keys(a).length !== Object.keys(b).length) {
return false
}
for (const key in a) {
if (!deepEqual(a[key], b[key])) {
return false
}
}
}