Let's say I have two deep objects:
var oldData = {
  "id": 1,
  "first_name": "Eric",
  "last_name": "Henry",
  "info": {
    "email": "ehenry0@smh.com.au",
    "gender": "Male",
    "ip_address": "7.11.169.150",
    "age": 11
  }
};
var newData = {
  "id": 2,
  "first_name": "Tommy",
  "last_name": "Henry",
  "info": {
    "email": "tommy@ghenrry.com",
    "gender": "Male",
    "ip_address": "7.11.169.150",
    "age": 15
  }
};
How would I use lodash (or JavaScript) to traverse through each object and get the value of each different value, so in the top case it would be
[
   {old: 1, new: 2},
   {old: 'Eric', new: 'Tommy'},
   {old: 'ehenry0@smh.com.au', new: 'tommy@ghenrry.com'},
   {old: 11, new: 15},
]
Here is what I have so far:
var oldData = {
  "id": 1,
  "first_name": "Eric",
  "last_name": "Henry",
  "info": {
    "email": "ehenry0@smh.com.au",
    "gender": "Male",
    "ip_address": "7.11.169.150",
    "age": 11
  }
};
var newData = {
  "id": 2,
  "first_name": "Tommy",
  "last_name": "Henry",
  "info": {
    "email": "tommy@ghenrry.com",
    "gender": "Male",
    "ip_address": "7.11.169.150",
    "age": 15
  }
};
var diffObj = _.difference(_.keys(oldData), _.keys(newData));
console.log(JSON.stringify(diffObj, null, 4));<script src="https://cdn.jsdelivr.net/lodash/4.17.4/lodash.min.js"></script> 
     
     
    