Skip to main content

Variable: flatMap()

const flatMap: {<From, To>(fn): (iterable) => Iterable<To>; <From, To>(fn, iterable): Iterable<To>; <From, To>(fn): (iterable) => Iterable<To>; <From, To>(fn, iterable): Iterable<To>; }

Defined in: transforms.d.ts:168

Returns an iterable containing the values of the iterables returned from applying fn to each value of iterable in iteration order.

Like Array.prototype.flatMap, but for iterables.

Call Signature

<From, To>(fn): (iterable) => Iterable<To>

Type Parameters

From

From

To

To extends [] | unknown[]

Parameters

fn

(value) => Iterable<To>

Returns

(iterable): Iterable<To>

Parameters

iterable

Iterable<From>

Returns

Iterable<To>

Call Signature

<From, To>(fn, iterable): Iterable<To>

Type Parameters

From

From

To

To extends [] | unknown[]

Parameters

fn

(value) => Iterable<To>

iterable

Iterable<From>

Returns

Iterable<To>

Call Signature

<From, To>(fn): (iterable) => Iterable<To>

Type Parameters

From

From

To

To

Parameters

fn

(value) => Iterable<To>

Returns

(iterable): Iterable<To>

Parameters

iterable

Iterable<From>

Returns

Iterable<To>

Call Signature

<From, To>(fn, iterable): Iterable<To>

Type Parameters

From

From

To

To

Parameters

fn

(value) => Iterable<To>

iterable

Iterable<From>

Returns

Iterable<To>

Example

import { flatMap, pipe, reduce, toArray } from 'lfi'

console.log(
pipe(
[`sloth`, `lazy`, `sleep`],
flatMap(word => [word, `much ${word}`]),
reduce(toArray()),
),
)
//=> [
//=> 'sloth',
//=> 'much sloth',
//=> 'lazy',
//=> 'much lazy',
//=> 'sleep',
//=> 'much sleep'
//=> ]
Playground

Since

v0.0.1