Difference between ( for… in ) and ( for… of ) statements?
for in loops over enumerable property names of an object. for of (new in ES6) does use an object-specific iterator and loops over the values generated by that. In your example, the array iterator does yield all the values in the array (ignoring non-index properties).