min-iterator.js
Minimal iterator API for Node.js and the browser.
Install with npm
npm install min-iterator
Browser compatibility
To use this module in a browser, download the npm package and then use
Browserify to create a standalone version.
Usage
This package provides the base iterator API with each(fn)
and toArray()
implementations (see API). An actual iterator implementation is created by
inheriting from Iterator
and implement next()
:
var inherits = require('inherits');
var Iterator = require('min-iterator');
function ArrayIterator (a) {
this._a = a;
this._i = 0;
}
inherits(ArrayIterator, Iterator);
ArrayIterator.prototype.next = function () {
return this._i < this._a.length ? this._a[this._i++] : undefined;
};
Using the itererator with a while loop:
while ((v = it.next()) !== undefined) {
console.log(v);
}
Using the itererator with each
:
it.each(function (v) {
console.log(v);
});
Iterator API
next()
: Returns the next item. If there are no more items,
undefined
is returned. The default implementation always returns
undefined
.each(fn, scope)
: Invokes the given function with each item returned by
next()
until undefined
is returned. The scope object is optional.toArray()
: Returns an array with all item returned by next()
.
License
MIT