A Simple Guide to ES6 Iterators in JavaScript with Examples
Brandon Morelli

I think it’s worth mentioning in this article that you normally would never implement an iterator manually — you would use a generator. Iterators and generators are tightly coupled concepts, but they are hard to grasp (I still feel like I’m learning new things about them), so I appreciate separating them and explaining them independently though 👍.