type-plus
Version:
Provides additional types for TypeScript.
17 lines • 499 B
JavaScript
/**
* 🦴 *utilities*
*
* `reduce()` with predicate for early termination.
* A simple version of the same function in the `ramda` package.
*/
export function reduceWhile(predicate, callbackfn, initialValue, array) {
let acc = initialValue;
for (let i = 0; i < array.length; i++) {
const value = array[i];
if (!predicate(acc, value))
return acc;
acc = callbackfn(acc, value, i, array);
}
return acc;
}
//# sourceMappingURL=reduce_while.js.map