I am trying to return values from a deeply nested variable, but am running into an undefined error.
I am not sure if it is due to having a dot (.) in the object names, or if my nested loop is the correct approach.
I am able to return the values in data1, but my approach does not work for data2 as it is a javascript object. So I created a loop, which returns top values, but I can't return nested ie. user.givenName.
var data1 = {
  "name": "Jane Doe",
  "users_cred": {
    "user.givenName": {
      "value": "Janette"
    },
    "user.bio": {
      "value": "123"
    }
  }
};
var data2 = [{
    "name": "Jane Doe",
    "users_cred": {
      "user.givenName": {
        "value": "Janette"
      },
      "user.bio": {
        "value": "123"
      }
    }
  },
  {
    "name": "John Citizen",
    "users_cred": {
      "user.givenName": {
        "value": "Jonathan"
      }
    }
  }
];
console.log(typeof data2);
for (let i = 0; i < data2.length; i++) {
  var userName = data2[i].name;
  console.log(userName);
  var userCreds = data2[i].users_cred;
  console.log(userCreds);
  // Not returning this value.
  console.log(userCreds.user.givenName);
} 
    