For AI agents: the complete documentation index is available at /llms.txt, the full documentation bundle is available at /llms-full.txt, and this page is available as Markdown at /reference/fp/unzip.md.

unzip (Functional Programming) es-toolkit

Creates a function that regroups zipped arrays by position. Use it with pipe.

const result = pipe(array, unzip());
Info

Prefer the original es-toolkit unzip in ordinary code. Use this fp variant when composing transformations with pipe.

Usage

unzip takes an array of grouped values and returns arrays that collect the values at each position.

The returned array's length matches the longest nested array, and missing positions from shorter arrays are filled with undefined.

import { pipe, unzip } from 'es-toolkit/fp';

pipe(
  [
    [1, 'a'],
    [2, 'b'],
  ],
  unzip()
); // => [[1, 2], ['a', 'b']]

Parameters

This function takes no arguments; call it as unzip().

Returns

A function that maps zipped rows to arrays grouped by position.

(zipped: ReadonlyArray<[...T]>) => Unzip<T>
Source: es-toolkit

Re-exported verbatim from es-toolkit. Implementation, edge cases, and performance behavior are owned upstream. This page mirrors the documentation at the pinned version; the linked source is authoritative.