Looping through iterators in Coffeescript
Some modern Javascript APIs return iterators Show archive.org snapshot instead of arrays.
In plain Javascript you can loop through an iterator using
for...of
Show archive.org snapshot
:
var iterator = ...;
for (var value of iterator) {
console.log(value);
}
While there is a for...of
construct in Coffeescript, it
iterates through property/value pairs
Show archive.org snapshot
and cannot be used to access iterable objects.
To iterate through an iterator in Coffeescript you need to do something like this:
iterator = ...;
while (entry = iterator.next()) && !entry.done
console.log(entry.value)
The parentheses in the while
cannot be omitted.