JSFiddle - React, Tailwind, and code Playground
JavaScript
var oldObj = {
"name": "Bob Odenkirk",
"title": "Software Engineer",
"location": {
"locality": "San Francisco",
"region": "CA",
"country": "United States"
},
"age": 62,
"status": "Active"
};
var newObj = {
"name": "Bob Odenkirk",
"title": "Software Engineer",
"location": {
"locality": "San Francisco",
"country": "United States"
},
"age": 62,
"company": "Accenture"
};
var missingProps = {};
function getMissingProps(oldObj, newObj){
for (var prop in oldObj) {
if(newObj.hasOwnProperty(prop) && typeof oldObj[prop] === 'object')
missingProps = getMissingProps(oldObj[prop], newObj[prop]);
else if(!newObj.hasOwnProperty(prop))
missingProps[prop] = oldObj[prop] ;
}
return missingProps;
}
console.log(getMissingProps(oldObj, newObj));