title: Not able to use forEach(func) on array'ish object
body: <p>I know how to use <code>forEach</code> in general but today I hit a spot that puzzled me. I've googled it but didn't get anything that I didn't already know.</p>
  
  <p>I'm starting with TypeScript because of Angular and I've accessed a set of controls from the DOM. Then, I pick one of them and get to its children.</p>
  
  <pre><code>@ViewChildren("marker") markers: QueryList&lt;ElementRef&gt;;
  
  this.markers.forEach(item =&gt; {
    let element = item.nativeElement;
  
    //item.children.forEach(child =&gt; {child.classList.add("poof"); });
    for (let child of element.children)
      child.classList.add("poof");
  });
  </code></pre>
  
  <p>According to the console, it looks like an array, as it's a list with brackets (although <code>typeof</code>  tells me it's an object).</p>
  
  <p>I'm confused about this and curious about why the commented out code doesn't work. Not sure what to google for, neither.</p>