index.esm.js 854 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. function shallowEqualObjects(objA, objB) {
  2. if (objA === objB) {
  3. return true;
  4. }
  5. if (!objA || !objB) {
  6. return false;
  7. }
  8. var aKeys = Object.keys(objA);
  9. var bKeys = Object.keys(objB);
  10. var len = aKeys.length;
  11. if (bKeys.length !== len) {
  12. return false;
  13. }
  14. for (var i = 0; i < len; i++) {
  15. var key = aKeys[i];
  16. if (objA[key] !== objB[key] || !Object.prototype.hasOwnProperty.call(objB, key)) {
  17. return false;
  18. }
  19. }
  20. return true;
  21. }
  22. function shallowEqualArrays(arrA, arrB) {
  23. if (arrA === arrB) {
  24. return true;
  25. }
  26. if (!arrA || !arrB) {
  27. return false;
  28. }
  29. var len = arrA.length;
  30. if (arrB.length !== len) {
  31. return false;
  32. }
  33. for (var i = 0; i < len; i++) {
  34. if (arrA[i] !== arrB[i]) {
  35. return false;
  36. }
  37. }
  38. return true;
  39. }
  40. export { shallowEqualArrays, shallowEqualObjects };