reduceRight
La méthode reduceRight() fonctionne comme reduce() mais parcourt le tableau de droite à gauche. Elle est utile pour composer des fonctions, reconstruire une structure depuis la fin ou traiter une pile.
Exemple interactif
Syntaxe
Signature classique
typescript
function reduceRight<
GenericInput extends readonly unknown[],
GenericReduceFrom extends number | string | bigint | boolean | ArrayReduceFromResult,
GenericExit extends ArrayReduceExit = ArrayReduceExit<never>
>(
input: GenericInput,
startValue: GenericReduceFrom,
theFunction: (
params: ArrayReduceFunctionParams<
GenericInput[number],
ArrayReduceFromValue<GenericReduceFrom>
>
) => ArrayReduceNext<ArrayReduceFromValue<GenericReduceFrom>> | GenericExit
): ArrayReduceFromValue<GenericReduceFrom> | (IsEqual<GenericExit, ArrayReduceExit> extends true ? never : GenericExit["-exit"])Signature currifiée
typescript
function reduceRight<
GenericInput extends readonly unknown[],
GenericReduceFrom extends number | string | bigint | boolean | ArrayReduceFromResult,
GenericExit extends ArrayReduceExit = ArrayReduceExit<never>
>(
startValue: GenericReduceFrom,
theFunction: (
params: ArrayReduceFunctionParams<
GenericInput[number],
ArrayReduceFromValue<GenericReduceFrom>
>
) => ArrayReduceNext<ArrayReduceFromValue<GenericReduceFrom>> | GenericExit
): (
input: GenericInput
) => ArrayReduceFromValue<GenericReduceFrom> | (IsEqual<GenericExit, ArrayReduceExit> extends true ? never : GenericExit["-exit"])Paramètres
Identiques à ceux de reduce, mais l'itération commence par le dernier élément du tableau.
En particulier :
params.selfexpose le tableau complet (pratique pour connaître la longueur ou comparer un index).params.nextPush()ajoute des valeurs àlastValuelorsqu'il s'agit d'un tableau, sans devoir appelernext()après unpush.
Valeur de retour
Le résultat de l'accumulation de droite à gauche (via next(), nextWithObject() ou nextPush()), ou la valeur passée à exit() si une sortie anticipée se produit.
