title: Why is this only iterating over odd elements of HTMLCollection?
body: <p>When using a for...of loop to iterate over an HTMLCollection returned from DOMParser only the odd elements are returned. I don't think this happens with NodeLists or HTMLCollections <em>not</em> created with DOMParser. It also doesn't happen if I convert the HTMLCollection to an array.</p>
  
  <p>Any idea why this is happening?</p>
  
  <pre><code>if (!HTMLCollection.prototype[Symbol.iterator]) {
      HTMLCollection.prototype[Symbol.iterator] = Array.prototype[Symbol.iterator];
  }
  
  let parser = new DOMParser();
  let markup = '&lt;p&gt;Node 1&lt;/p&gt;&lt;p&gt;Node 2&lt;/p&gt;&lt;p&gt;Node 3&lt;/p&gt;&lt;p&gt;Node 4&lt;/p&gt;&lt;p&gt;Node 5&lt;/p&gt;';
  let doc = parser.parseFromString(markup, "text/html");
  for (let element of doc.body.children) {
      document.body.appendChild(element);
  }
  </code></pre>
  
  <ul>
  <li><p><a href="https://jsfiddle.net/8unbum1q/" rel="nofollow">https://jsfiddle.net/8unbum1q/</a></p></li>
  <li><p><a href="https://jsfiddle.net/soq44eL2/" rel="nofollow">https://jsfiddle.net/soq44eL2/</a></p></li>
  </ul>