mirror of
https://github.com/WeBankFinTech/fes.js.git
synced 2026-04-29 15:04:03 +08:00
19 lines
525 B
TypeScript
19 lines
525 B
TypeScript
import { isPlainObject, isEqual as deepIsEqual } from 'es-toolkit/compat';
|
|
|
|
function funcToStr(obj: any): any {
|
|
if (typeof obj === 'function') {
|
|
return obj.toString();
|
|
}
|
|
if (isPlainObject(obj)) {
|
|
return Object.keys(obj).reduce((memo: Record<string, any>, key: string) => {
|
|
memo[key] = funcToStr(obj[key]);
|
|
return memo;
|
|
}, {});
|
|
}
|
|
return obj;
|
|
}
|
|
|
|
export default function isEqual(a: any, b: any): boolean {
|
|
return deepIsEqual(funcToStr(a), funcToStr(b));
|
|
}
|