v5.js 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.deepEqual = void 0;
  4. const isArray = Array.isArray;
  5. const deepEqual = (a, b) => {
  6. if (a === b)
  7. return true;
  8. let length, i, keys;
  9. if (isArray(a)) {
  10. if (!isArray(b))
  11. return false;
  12. length = a.length;
  13. if (length !== b.length)
  14. return false;
  15. for (i = length; i-- !== 0;)
  16. if (!(0, exports.deepEqual)(a[i], b[i]))
  17. return false;
  18. return true;
  19. }
  20. if (a && b && typeof a === 'object' && typeof b === 'object') {
  21. keys = Object.keys(a);
  22. length = keys.length;
  23. if (length !== Object.keys(b).length)
  24. return false;
  25. if (isArray(b))
  26. return false;
  27. for (i = length; i-- !== 0;) {
  28. const key = keys[i];
  29. if (!(0, exports.deepEqual)(a[key], b[key]))
  30. return false;
  31. }
  32. return true;
  33. }
  34. return false;
  35. };
  36. exports.deepEqual = deepEqual;
  37. //# sourceMappingURL=v5.js.map