Invoke an async reducer function on each item in the given Array,
where the reducer transforms an accumulator value based on each item iterated over.
Note: because reduce()
is order-sensitive, iteration is sequential.
This is an asynchronous version of
Array.prototype.reduce()
(Array)
The Array to reduce
(Function)
Async function, gets passed
(accumulator, value, index, array)
and returns a new value for
accumulator
([any])
Optional initial accumulator value
any
:
final
accumulator
value
await reduce(
['/foo', '/bar', '/baz'],
async (accumulator, value) => {
accumulator[v] = await fetch(value);
return accumulator;
},
{}
);
Invoke an async transform function on each item in the given Array in parallel, returning the resulting Array of mapped/transformed items.
This is an asynchronous, parallelized version of
Array.prototype.map()
.
(Array)
The Array to map over
Array
:
resulting mapped/transformed values.
await map(
['foo', 'baz'],
async v => await fetch(v)
)
Invoke an async filter function on each item in the given Array in parallel, returning an Array of values for which the filter function returned a truthy value.
This is an asynchronous, parallelized version of
Array.prototype.filter()
.
(Array)
The Array to filter
(Function)
Async function. Gets passed
(value, index, array)
, returns true to keep the value in the resulting filtered Array.
Array
:
resulting filtered values
await filter(
['foo', 'baz'],
async v => (await fetch(v)).ok
)
Invoke an async function on each item in the given Array in parallel, returning the first element predicate returns truthy for.
This is an asynchronous, parallelized version of
Array.prototype.find()
.
(Array)
The Array to find
(Function)
Async function. Gets passed
(value, index, array)
, returns true to be the find result.
any
:
resulting find value
await find(
['foo', 'baz', 'root'],
async v => (await fetch(v)).name === 'baz'
)
Checks if predicate returns truthy for all elements of collection in parallel.
This is an asynchronous, parallelized version of
Array.prototype.every()
.
(Array)
The Array to iterate over.
(Function)
Async function. Gets passed
(value, index, array)
, The function invoked per iteration.
Boolean
:
Returns true if
all
element passes the predicate check, else false.
await every(
[2, 3],
async v => (await fetch(v)).ok
)
Checks if predicate returns truthy for any element of collection in parallel.
This is an asynchronous, parallelized version of
Array.prototype.some()
.
(Array)
The Array to iterate over.
(Function)
Async function. Gets passed
(value, index, array)
, The function invoked per iteration.
Boolean
:
Returns true if
any
element passes the predicate check, else false.
await some(
['foo', 'baz'],
async v => (await fetch(v)).ok
)
Invoke all async functions in an Array or Object in parallel, returning the result.
(Array | Object)
:
same structure as
list
input, but with values now resolved.
await parallel([
async () => await fetch('foo'),
async () => await fetch('baz')
])
Invoke all async functions in an Array or Object sequentially, returning the result.
(Array | Object)
:
same structure as
list
input, but with values now resolved.
await series([
async () => await fetch('foo'),
async () => await fetch('baz')
])