for-each-break
Small utility library implementing forEach
, map
, filter
, forEachRight
, mapRight
and
filterRight
functions with break and return emulation as if it was a regular for
or while
loop.
To simulate break return BREAK
or RETURN
, to simulate return
return BREAK(value)
or
RETURN(value)
both are equivalent but the one communicating the right intent should be used.
The functions assume this
is an array like object so they should be invoked with
.call(arrayLike, callback)
defines:
BREAK
- used to break or return from loop, using BREAK
to break out of loop is preferred since it communicates clear intentionRETURN
- used to break or return from loop, using RETURN
to break out of loop and return a value is preferred since it communicates clear intentionfilter
- use to filter array like object, with early break or return: filter.call(arrayLike, callback, thisArg)
forEach
- use to loop over array like object: forEach.call(arrayLike, callback, thisArg, defaultReturn)
map
- use to map array like object, with early break or return: map.call(arrayLike, callback, thisArg)
filterRight
- use to filter array like object in reverse, with early break or return: filter.call(arrayLike, callback, thisArg)
forEachRight
- use to loop over array like object in reverse: forEach.call(arrayLike, callback, thisArg, defaultReturn)
mapRight
- use to map array like object in reverse, with early break or return: map.call(arrayLike, callback, thisArg)
Install
Use npm to install.
npm install for-each-break --save
Usage
License
MIT, see LICENSE.md for
details.