• The opposite of pickBy; this function creates an object composed of the own enumerable string keyed properties of object that predicate doesn't return truthy for.

    Differences from lodash:

    • does not treat sparse arrays as dense

    Contribution to minified bundle size, when it is the only function imported:

    • Lodash: 17,456 bytes
    • Micro-dash: 389 bytes

    Type Parameters

    • T
    • O

    Parameters

    • object: Nil | readonly T[]
    • predicate: ValueNarrowingIteratee<T[], O>

    Returns Record<number, Exclude<T, O>>

  • Type Parameters

    • T

    Parameters

    • object: Nil | readonly T[]
    • predicate: ObjectIteratee<T, boolean>

    Returns Record<number, T>

  • Type Parameters

    • I
    • T extends {}
    • O

    Parameters

    • object: I
    • predicate: ValueNarrowingIteratee<T, O>

    Returns Evaluate<IfCouldBe<I, Nil, {}> | {
        [K in KeysWithMaybeIncludedValues<T, O>]?: Exclude<T[K], O>
    } & {
        [K in KeysWithDefinitelyIncludedValues<T, O>]: Exclude<T[K], O>
    }>

  • Type Parameters

    • I
    • T extends {}
    • O

    Parameters

    • object: I
    • predicate: KeyNarrowingIteratee<T, O>

    Returns Evaluate<IfCouldBe<I, Nil, {}> | {
        [K in DefinitelyIncludedKeys<T, O>]: T[K]
    } & {
        [K in MaybeIncludedKeys<T, O>]?: T[K]
    }>

  • Type Parameters

    • T

    Parameters

    • object: T
    • predicate: ObjectIteratee<T, boolean>

    Returns Evaluate<PartialExceptIndexes<NonNullable<T>>>