Skip to content

flat() function

평탄화된 Iterable/AsyncIterable을 반환합니다. 첫 번째 인자가 숫자이면 더 깊이 평탄화를 수행합니다 flat([[[1,2]]], 2) // [1,2]

Signature:

typescript
declare function flat<
  A extends Iterable<unknown> | AsyncIterable<unknown>,
  B extends number = 1,
>(iterator: A, depth?: B): ReturnFlatType<A, B>;

Example

ts
const iter = flat([1, [2, 3], [[4, 5]]]);
iter.next(); // {done:false, value: 1}
iter.next(); // {done:false, value: 2}
iter.next(); // {done:false, value: 3}
iter.next(); // {done:false, value: [4, 5]}
iter.next(); // {done:true, value: undefined}

// with pipe
pipe([1, [2, 3], [[4, 5]]], flat, toArray); // [1, 2, 3, [4, 5]]

await pipe(Promise.resolve([1, [2, 3], [[4, 5]]]), flat, toArray); // [1, 2, 3, [4, 5]]

Try It

see pipe, toAsync, toArray

Open Source Code

Released under the Apache-2.0 License.