index.js 529 B

12345678910111213141516171819202122232425262728293031
  1. 'use strict';
  2. function shallowEqualObjects(objA, objB) {
  3. if (objA === objB) {
  4. return true;
  5. }
  6. if (!objA || !objB) {
  7. return false;
  8. }
  9. var aKeys = Object.keys(objA);
  10. var bKeys = Object.keys(objB);
  11. var len = aKeys.length;
  12. if (bKeys.length !== len) {
  13. return false;
  14. }
  15. for (var i = 0; i < len; i++) {
  16. var key = aKeys[i];
  17. if (objA[key] !== objB[key] || !Object.prototype.hasOwnProperty.call(objB, key)) {
  18. return false;
  19. }
  20. }
  21. return true;
  22. }
  23. module.exports = shallowEqualObjects;