Paramètres Rest en JavaScript

Qu'est-ce que les paramètres rest ?

Les paramètres rest constituent une fonctionnalité en JavaScript qui permet à une fonction de recevoir un nombre indéfini d'arguments sous forme de tableau. Cela facilite la création de fonctions dites variadiques. En utilisant la syntaxe des paramètres rest, une fonction peut être définie pour accepter un quelconque nombre d'arguments, offrant ainsi une flexibilité dans son utilisation.

Syntaxe des paramètres rest

Pour déclarer une fonction avec des paramètres rest, voici la syntaxe à suivre :

function nomDeFonction(...nomDuParametre) {
  // instructions
}

Dans cette syntaxe, l'opérateur ... précédant le nom du paramètre indique que tous les arguments passés à la fonction seront regroupés dans un tableau.

Exemple d'utilisation

Prenons un exemple simple pour illustrer cela. Imaginons que nous souhaitions créer une fonction qui additionne des nombres :

function additionnerValeurs(...valeurs) {
  let total = 0;
  for (let valeur of valeurs) {
    total += valeur;
  }
  return total;
}

Ici, la fonction additionnerValeurs récupère tous les nombres passés comme arguments et les additionne. Si nous invoquons :

let nombres = [2, 4, 6, 8, 10];
console.log(additionnerValeurs(...nombres));

Cela affichera :

30

Flexibilité d'utilisation

Nous pouvons aussi passer d'autres valeurs en plus du tableau, comme le montre l'exemple suivant :

console.log(additionnerValeurs(...nombres, 10));

Le résultat serait alors :

40

Exemple Codebyte

Examinons un exemple qui simule les réponses d'un état d'utilisateur. En utilisant le paramètre rest, nous allons créer la fonction obtenirUtilisateurs, qui pourra gérer plusieurs états différents :

function obtenirUtilisateurs(...statuts) {
  // Logic to handle different user statuses
}