diff --git a/helpful.js b/helpful.js index d39db91..2c2b117 100644 --- a/helpful.js +++ b/helpful.js @@ -397,6 +397,38 @@ } return bytes; } + + helpful.differenceOfObjects = function(object1, object2) { + if (object1 == null) { + return {}; + } + if (object2 == null) { + return object1; + } + + let result = {}; + let keys1 = Object.keys(object1); + + for (let i = 0; i < keys1.length; i++) { + let key = keys1[i]; + + if (!(key in object2)) { + result[key] = object1[key]; + } + } + + return result; + } + + + console.log(helpful.differenceOfObjects({"a": 1, "b": 2}, {"b": 3, "c": 4})); + + + console.log(helpful.differenceOfObjects({"a": 1, "b": 2}, {"a": 3, "b": 4})); + + + console.log(helpful.differenceOfObjects({"a": 1, "b": 2}, {"c": 3, "d": 4})); + return helpful; }));