Function groupBy

  • Groups an array based on callback return value

    Type Parameters

    • T
    • G

    Parameters

    • array: T[]
    • keyCallback: ((value) => G)
        • (value): G
        • Parameters

          • value: T

          Returns G

    Returns [G, T[]][]

    Example

    groupBy([6.1, 4.2, 6.3], Math.floor)
    // [ [4, [4.2]], [6, [6.1, 6.3]] ]

    groupBy(['one', 'two', 'three'], v => [v.length, v.includes('a')])
    // [ [[5, false], ['three']], [[3, false], ['one', 'two']] ]
  • Type Parameters

    • T
    • G

    Parameters

    • array: readonly T[]
    • keyCallback: ((value) => G)
        • (value): G
        • Parameters

          • value: T

          Returns G

    Returns ReadonlyArray<[G, T[]]>