6Iterables, Iterators, for-of, Iterable Spread, Generators

JavaScript got a new feature in ES2015: generalized iteration, the classic “for each” idiom popular in many languages. In this chapter you'll learn about the new feature's iterators and iterables and how you create and use them. You'll also learn about JavaScript's powerful new generators that make creating iterators easy, and also take the concept further, making communication two-way.

ITERATORS, ITERABLES, THE FOR-OF LOOP, AND ITERABLE SPREAD SYNTAX

In this section, you'll learn about JavaScript's new iterators and iterables, the for-of loop that makes using iterators easy, and the handy spread syntax ( ) for iterables.

Iterators and Iterables

Many languages have some kind of “for each” construct for looping through the entries of an array or list or other collection object. For years, JavaScript only had the for-in loop, which isn't a general-purpose tool (it's just for looping through the properties of an object). The new Iterator and Iterable “interfaces” (see note) and new language constructs that use them change that.

Get JavaScript 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.