ES6 In Depth: Iterators and the for-of loop