title: Creating objects by splitting an object whose attributes are arrays
body: <p>I have an array of objects whose attributes are arrays (of variable length) and I want to replace those objects with new ones (in the same array) created by combining the elements present in the array-attributes. 
  I'm working in a function of a js class, that's why you see "this." 
  People suggested me to use .reduce() and .map(), but I didn't figure out how to use them.
  Here's the goal:</p>
  
  <pre><code>
      this.apple="apple"
  
      this.Array=[ 
        { names:[something1, something2...]
          fruit:this.apple
          features:[feature1,feature2,...]
        }
      ]
  
  </code></pre>
  
  <p>And the expected output would be:</p>
  
  <pre><code>      // (expected output):
  
      this.Array=[
        { names:something1,
          fruit:this.apple
          features:feature1
        },
        { names:something1,
          fruit:this.apple
          features:feature2
        },
        { names:something2,
          fruit:this.apple
          features:feature1
        },
        { names:something2,
          fruit:this.apple
          features:feature2
        },
        ...
      ]
  
  </code></pre>