mirror of
https://github.com/toss/es-toolkit.git
synced 2024-11-28 03:34:26 +03:00
1.1 KiB
1.1 KiB
zip
Combines multiple arrays into a single array of tuples.
This function takes multiple arrays and returns a new array where each element is a tuple
containing the corresponding elements from the input arrays. If the input arrays are of
different lengths, the resulting array will have the length of the longest input array,
with undefined
values for missing elements.
Signature
function zip<T>(arr1: T[]): [T][];
function zip<T, U>(arr1: T[], arr2: U[]): [T, U][];
function zip<T, U, V>(arr1: T[], arr2: U[], arr3: V[]): [T, U, V][];
function zip<T, U, V, W>(arr1: T[], arr2: U[], arr3: V[], arr4: W[]): [T, U, V, W][];
function zip<T>(...arrs: T[][]): T[][];
Parameters
...arrs
(T[][]
): The arrays to zip together.
Returns
(T[][]
): A new array of tuples containing the corresponding elements from the input arrays.
Examples
const arr1 = [1, 2, 3];
const arr2 = ['a', 'b', 'c'];
const result = zip(arr1, arr2);
// result will be [[1, 'a'], [2, 'b'], [3, 'c']]
const arr3 = [true, false];
const result2 = zip(arr1, arr2, arr3);
// result2 will be [[1, 'a', true], [2, 'b', false], [3, 'c', undefined]]