Merging javascript objects on property
===

What I have is an object with three members.
Each of these members has an array of objects each with new members. 
So accessing an "inner" member would be done like this.

    outerObject.outerObjectMember[innerObjectPlacementInArray].innerObjectMember;

In each of the three outer members there's an inner object in the array with a value (id) that is equal to a value in both of the other outer members inner objects members. 
There are no duplicate ids in either outer member.
What I want to do is create objects that are made by joining all the inner objects on the (id) value resulting in objects that have the properties of each inner member with the same id.

Finally these objects should be in an array.

I know it can probably be done using a lot of loops and ifs but I was wondering if any method existed or if someone had a nice and quick(perfomance-wise) solution

Does this make sense or does it need further clarification ?

