title: How can I use JavaScript destructuring assignment when name conflict
body: <p>With babel, I can make above work well,</p>
  
  <pre><code>import { f as foo } from 'f';
  </code></pre>
  
  <p>and destructuring assignment feature can make above work well too,</p>
  
  <pre><code>const { a: { b: { c } } } = { a: { b: { c: 10 } } };
  console.log(c);  // =&gt; return 10
  </code></pre>
  
  <p>but now I encouter a problem above:</p>
  
  <pre><code>const {
    a: { b: { c } },
    a2: { b: { c } }
  } = { a: { b: { c: 10 } }, a2: { b: { c: 90 } } };
  console.log(c);  // =&gt; return 90, but I also want to get c=10.
  </code></pre>
  
  <p>If there is any approaches to make a alias like above work?</p>
  
  <pre><code>{
    a: { b: { c as c1 } },
    a2: { b: { c as c2 } }
  } = { a: { b: { c: 10 } }, a2: { b: { c: 90 } } };
  </code></pre>