findIndex
function stable operator
Выпускает только индекс первого значения, испущенного исходным Observable, удовлетворяющего некоторому условию.
findIndex<T>(predicate: (value: T, index: number, source: Observable<T>) => boolean, thisArg?: any): OperatorFunction<T, number>
Параметры
predicate | (value: T, index: number, source: Observable<T>) => boolean | Функция, вызываемая с каждым элементом для проверки соответствия условию. |
thisArg | any | Необязательно. По умолчанию Необязательный аргумент для определения значения |
Возвращает
OperatorFunction<T, number>: Функция, возвращающая Observable, которая выпускает индекс первого элемента, соответствующего условию.
Описание
Это как find, но выпускает индекс найденного значения, а не само значение.
findIndex ищет первый элемент в исходном Observable, который соответствует заданному условию, воплощенному в predicate, и возвращает (нумерацию с нуля) индекс первого вхождения в исходном наборе. В отличие от first, predicate требуется в findIndex, и не выпускает ошибку, если не найдено соответствующего значения.
Пример
Выдать индекс первого клика, произошедшего на элементе DIV
import { fromEvent, findIndex } from 'rxjs';
const div = document.createElement('div');
div.style.cssText = 'width: 200px; height: 200px; background: #09c;';
document.body.appendChild(div);
const clicks = fromEvent(document, 'click');
const result = clicks.pipe(findIndex(ev => (<HTMLElement>ev.target).tagName === 'DIV'));
result.subscribe(x => console.log(x)); Перегрузки
findIndex(predicate: BooleanConstructor): OperatorFunction<T, T extends Falsy ? -1 : number>
Параметры
predicate | BooleanConstructor |
Возвращает
OperatorFunction<T, T extends Falsy ? -1 : number>
findIndex(predicate: BooleanConstructor, thisArg: any): OperatorFunction<T, T extends Falsy ? -1 : number>
Параметры
predicate | BooleanConstructor | |
thisArg | any |
Возвращает
OperatorFunction<T, T extends Falsy ? -1 : number>
findIndex(predicate: (this: A, value: T, index: number, source: Observable<T>) => boolean, thisArg: A): OperatorFunction<T, number>
Параметры
predicate | (this: A, value: T, index: number, source: Observable<T>) => boolean | |
thisArg | A |
Возвращает
OperatorFunction<T, number>
findIndex(predicate: (value: T, index: number, source: Observable<T>) => boolean): OperatorFunction<T, number>
Параметры
predicate | (value: T, index: number, source: Observable<T>) => boolean |
Возвращает
OperatorFunction<T, number>
См. также
© 2015–2022 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors.
Code licensed under an Apache-2.0 License. Documentation licensed under CC BY 4.0.
https://rxjs.dev/api/operators/findIndex