function iterate(iterable) { var index = -1; return function next() { return ++index < iterable.length ? iterable[index] : null; } }; function makeIterator(iterable) { var index = -1; return function next() { return ++index < iterable.length ? { value: iterable[index], key: index, next: next, done: false } : { done: true }; }; }