1.0.0 • Published 10 years ago
min-iterator v1.0.0
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 returnsundefined
.each(fn, scope)
: Invokes the given function with each item returned bynext()
untilundefined
is returned. The scope object is optional.toArray()
: Returns an array with all item returned bynext()
.
License
MIT