"You can also create your own iterable objects. Normally this is done via the yield keyword (discussed below in Generators) but it could be done explicitly by returning an object that has __iterator__"
This clearly seems to be borrowed from Python; even the double underscores are present, which looks a little odd in javascript.