Paramètres du reste et opérateur de décomposition des fonctions JavaScript

Souvent, dans le cas d’opérations mathématiques, on aimerait faire en sorte qu’une fonction puisse recevoir un nombre variable d’arguments. Par exemple, on pourrait vouloir créer une fonction donc le rôle est d’additionner différents nombres mais sans avoir à définir combien de nombre doivent être additionnés. On va pouvoir faire cela en utilisant les paramètres du reste.

 

Les paramètres du reste

De nombreuses fonctions prédéfinies en JavaScript acceptent un nombre variable d’arguments. C’est par exemple le cas de la méthode max de l’objet Math à laquelle on va pouvoir passer autant d’arguments que l’on souhaite.

Parfois, nous voudrons également définir des fonctions pouvant accepter un nombre variable d’arguments. Pour faire cela, nous allons devoir utiliser une notation utilisant dans la déclaration des paramètres de la fonction suivi d’un nom qu’on va choisir.

See the Pen
Cours JavaScript 10.1.1
by Pierre (@pierregiraud)
on CodePen.

Lorsqu’on déclare des paramètres de cette manière, on parle de « paramètres du reste ». Littéralement, on demande au JavaScript de stocker les arguments passés dans un tableau qui possèdera le nom mentionné après .

On va également pouvoir créer des fonctions en précisant des paramètres de manière « classique » et en utilisant aussi des paramètres du reste. Dans ce cas-là, seuls les arguments supplémentaires passés à la fonction seront stockés dans le tableau.

Attention cependant : pour que ce type d’écriture fonctionne, il faudra toujours préciser les paramètres classiques en premier et les paramètres du reste en dernier dans la déclaration de la fonction.

See the Pen
Cours JavaScript 10.1.2
by Pierre (@pierregiraud)
on CodePen.

 

L’opérateur de décomposition

Les paramètres du reste permettent de stocker une liste d’arguments dans un tableau qu’on va ensuite pouvoir manipuler.

L’opérateur de décomposition permet de faire l’opération inverse, à savoir transformer un tableau en une liste d’arguments qu’on va pouvoir passer à une fonction.

L’opérateur de décomposition utilise la même syntaxe avec que les paramètres du reste à la différence qu’on va faire suivre les trois points par le nom d’un tableau existant.

L’opérateur de décomposition va alors casser le tableau en une liste d’arguments qui vont pouvoir être utilisés par la fonction.

La fonction max le l’objet Math, par exemple, accepte une liste de nombres en arguments et retourne le plus grand. On va pouvoir utiliser l’opérateur de décomposition pour lui passer cette liste sous forme de tableau.

See the Pen
Cours JavaScript 10.1.3
by Pierre (@pierregiraud)
on CodePen.

Cette façon de faire va être très utile dans le cas où on ne sait pas à l’avance combien de nombres on va passer à max. En effet, on peut ainsi créer un script qui va ajouter les nombres passés dans notre tableau et passer le tableau à la fonction quel que soit le nombre d’éléments dans celui-ci.

Laisser un commentaire