title: Array.map and Typescript Object spread operator not mapping to original array
body: <p>I have an array of members in Typescript.</p>
  
  <pre><code>const members = [
    {
      name: 'John Lennon',
      id: 1
    },
    {
      name: 'Led Zeppelin',
      id: 2
    },
    {
      name: 'Freddie Mercury',
      id: 3
    }
  ];
  </code></pre>
  
  <p>When I try to map over it and add key</p>
  
  <pre><code>members.map(member =&gt; {
      member.designation = 'Singer';
      return member;
   });
  </code></pre>
  
  <p>It successfully overwrites an array and add key designation. But when I try doing the same thing using Object spread operator.</p>
  
  <pre><code>members.map(member =&gt; ({
    ...member,
    designation: 'Singer'
  }));
  </code></pre>
  
  <p>It successfully compiles with no error, but at the same time does not map the key <code>designation</code> over my members array.</p>
  
  <p>Is it the correct way to do, or am I missing something and it is just a problem with Typescript Object spread operation.</p>