Function findIndex

  • Find the index of the first value which matches a predicate.

    Type Parameters

    • T

    Parameters

    • object: Iterable<T>

      The iterable object to search.

    • fn: ((value, index) => boolean)

      The predicate function to apply to the values.

        • (value, index): boolean
        • Parameters

          • value: T
          • index: number

          Returns boolean

    Returns number

    The index of the first matching value, or -1 if no matching value is found.

    Complexity

    Linear.

    Example

    import { findIndex } from '@lumino/algorithm';

    interface IAnimal { species: string, name: string };

    function isCat(value: IAnimal): boolean {
    return value.species === 'cat';
    }

    let data: IAnimal[] = [
    { species: 'dog', name: 'spot' },
    { species: 'cat', name: 'fluffy' },
    { species: 'alligator', name: 'pocho' }
    ];

    findIndex(data, isCat); // 1