title: How to destructure keys out of an array (ES6)
body: <p>We just made this code based on a hunch, and it worked. I'm pretty sure it's acceptable. I just want to make sure:</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-js lang-js prettyprint-override"><code>const state = { inProgress: true }
  const actions = 'COMPLETE_RICE'
  const change = { inProgress: false, rice: 'cooked' }
  
  // Is this destructuring OK?
  const {
    0: newState,
    1: newActions,
    2: newChange,
  } = [state, actions, change]
  
  console.log('New State:', newState)
  console.log('New Actions:', newActions)
  console.log('New Change:', newChange)</code></pre>
  </div>
  </div>
  </p>
  
  <p>Is there a better way to do this?</p>
  
  <p>Any concerns or violations?</p>
  
  <p>I can't find any examples of this and only tried it because I recalled that:</p>
  
  <p><code>['one', 'two', 'three']</code> can be expressed as an object:</p>
  
  <pre><code>{
    0: 'one',
    1: 'two',
    2: 'three'
  }
  </code></pre>
  
  <p>It's not exactly listed here:
  <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment" rel="nofollow noreferrer">https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment</a></p>
  
  <p>But, it works.</p>