Generators

Closely linked with iterators and iterables, generators are one of the most talked about features of ES6. Generator functions return a generator object; this term sounds confusing at first. When you write a function, you also instinctively understand its behavior-the function starts execution, line-by-line, and finishes execution when the last line is executed. Once the function is linearly executed this way, the rest of the code that follows the function is executed.

In languages where multithreading is supported, such flow of execution can be interrupted and partially finished tasks can be shared between different threads, processes, and channels. JavaScript is single-threaded, and you don't need to deal with challenges around multithreading ...

Get Object-Oriented JavaScript - Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.