Skip to content

asyncFilter

La fonction asyncFilter() filtre les éléments d'un générateur selon un prédicat asynchrone. Retourne un générateur asynchrone contenant uniquement les éléments qui satisfont la condition.

Exemple interactif

Syntaxe

Signature classique avec type guard

typescript
function asyncFilter<
	GenericElement extends unknown,
	GenericOutput extends GenericElement,
>(
	iterator: Iterable<GenericElement> | AsyncIterable<GenericElement>,
	predicate: (
		item: GenericElement, 
		params: AsyncGeneratorFilterParams
	) => item is GenericOutput
): AsyncGenerator<GenericOutput, unknown, unknown>

Signature classique avec boolean

typescript
function asyncFilter<
	GenericElement extends unknown,
>(
	iterator: Iterable<GenericElement> | AsyncIterable<GenericElement>,
	predicate: (
		item: GenericElement, 
		params: AsyncGeneratorFilterParams
	) => boolean
): AsyncGenerator<GenericElement, unknown, unknown>

Signature currifiée

typescript
function asyncFilter<
	GenericElement extends unknown,
>(
	predicate: (
		item: GenericElement, 
		params: AsyncGeneratorFilterParams
	) => boolean
): (
	iterator: Iterable<GenericElement> | AsyncIterable<GenericElement>
) => AsyncGenerator<GenericElement, unknown, unknown>

Paramètres

  • iterator : Le générateur (synchrone ou asynchrone) à filtrer
  • predicate : Fonction asynchrone de filtrage qui reçoit :
    • item : L'élément courant
    • params.index : L'index de l'élément

Valeur de retour

Un AsyncGenerator contenant les éléments filtrés.

Voir aussi

  • filter - Version synchrone de asyncFilter
  • asyncMap - Transforme avec une fonction asynchrone
  • asyncReduce - Réduit avec une fonction asynchrone

Sources

Diffusé sous licence MIT.