title: lodash: combine array of objects
body: <p>In lodash, I want to convert an array of objects to a single object that contains an array of each property. </p>
  
  <p>I have an array of objects: </p>
  
  <pre><code>var students = [{
      name: 'A',
      idNo: 1,
      marks: {
          math: 98,
          sci: 97,
          eng: 89
      }
  }, {
      name: 'B',
      idNo: 2,
      marks: {
          math: 88,
          sci: 87,
          eng: 79
      }
  }, {
      name: 'C',
      idNo: 3,
      marks: {
          math: 87,
          sci: 98,
          eng: 91
      }
  }]
  </code></pre>
  
  <p>I want to combine / reshape them like this:</p>
  
  <pre><code>{
      name: [A, B, C],
      idNo: [1, 2, 3],
      marks: [{
              math: 98,
              sci: 97,
              eng: 89
          }, {
  
              math: 88,
              sci: 87,
              eng: 79            
      }, {
              math: 87,
              sci: 98,
              eng: 91
          }
      }]
  }
  </code></pre>
  
  <p>I want this to be done purely with lodash or js inbuilt functions without any loops.</p>
  
  <p>Edit : I have already implemented a solution as suggested by Nenad. I want a utility function in lodash.</p>