I have one array of objects, and one object:
Array:
var arr = [{
  "key": "id",
  "value": "text_1"
},
{
  "key": "created_at",
  "value": "text_2"
},
{
  "key": "name",
  "value": "text_3"
},
{
  "key": "email",
  "value": "text_4"
}
];
Object:
var obj = {
  "id": 15,
  "created_at": 1630079164692,
  "name": "femb",
  "email": "fje@gmail.com",
  "reb": "91823",
  "google_oauth": {
    "id": "",
    "name": "",
    "email": ""
  },
  "facebook_oauth": {
    "id": 0,
    "name": "",
    "email": ""
  },
  "linkedin_oauth": {
    "id": "",
    "name": "",
    "email": ""
  },
  "github_oauth": {
    "id": "",
    "name": "",
    "email": ""
  }
};
I would like to use all the "values" from the array and construct a new object using the values as the first parameter, and "key" of that arr to find the entries in the "obj" object. Example what I would like to get:
{
  text_1: 15
  text_2: 1630079164692
  text_3: "femb"
  text_4: "fje@gmail.com"
}
I'm trying to do this using .map
var combined = Object.fromEntries(arr.map(item => [item.value, obj.[this.key]]));
But I'm having SyntaxError, not sure how I should access to the obj entries using the arr key.
Any ideas?
EDIT: I think I have found the way:
var combined = Object.fromEntries(arr.map(item => [item.value, obj[item.key]]));
Can someone tell me if It's a good way to access? Or there's better?
Thanks.
