'How to spread object inside object

I Have an object inside another object and I want to spread the inner one, my reason is when I want to call the object by it's id

My object

Resolver [
  { _id: { _id: '123456789', totaloutcome: 'DONE' }, count: 4 },
  {
    _id: { _id: '05000002', totaloutcome: 'OUTCOME_APPROVED_ONLINE' },
    count: 33
  },
  {
    _id: { _id: '05000002', totaloutcome: 'OUTCOME_CANCELLED' },
    count: 1
  },
  {
    _id: { _id: '05000002', totaloutcome: 'OUTCOME_UNKNOWN' },
    count: 1
  },
  {
    _id: { _id: '05000002', totaloutcome: 'OUTCOME_DECLINED' },
    count: 15
  }
]

As shown above I want to append 'count' attribut inside '_id' attribute , i couldn't spread the inner one so How can I do it



Solution 1:[1]

Code

const Resolver= [
  { _id: { _id: '123456789', totaloutcome: 'DONE' }, count: 4 },
  {
    _id: { _id: '05000002', totaloutcome: 'OUTCOME_APPROVED_ONLINE' },
    count: 33
  },
  {
    _id: { _id: '05000002', totaloutcome: 'OUTCOME_CANCELLED' },
    count: 1
  },
  {
    _id: { _id: '05000002', totaloutcome: 'OUTCOME_UNKNOWN' },
    count: 1
  },
  {
    _id: { _id: '05000002', totaloutcome: 'OUTCOME_DECLINED' },
    count: 15
  }
]

const result = Resolver.map(({_id, ...rest}) => {
  return { ..._id, ...rest };
});

console.log(result)

Solution 2:[2]

You can do this using the spread operator:

array.map((item) => {
  return { ...item, ...item._id };
});

Solution 3:[3]

How to spread object inside object

We are useing ... for spreding object into inner obj.

const user = {
  name:"siva",
  age: 25
}

//spred user in to below obj
const userInfo = {
   _id:"123445",
   phno: 77777777777
   ...user
}```

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Nikhil
Solution 2 Haris Bouchlis
Solution 3