JavaScript - Function

Remi Forax

Les fonctions

Fonction

Pour éviter de dupliquer le code,
on déclare des fonctions (avec le mot clé function).

name est un paramètre qui prend successivement les valeurs "Bob" puis "Kathy"

Fonction et valeur de retour

Une fonction peut avoir une valeur de retour que l'on renvoie avec le mot-clef return.

 

Fonction et return

Si on omet le return, la valeur de retour est undefined.

 

Fonction récursive

Les fonctions en JavaScript peuvent être récursives.

 

Paramètres et arguments

Lors de l'appel, si il y a trop d'arguments, ils seront ignorés, si il y a pas assez d'arguments, les paramètres auront la valeur undefined

 

Paramètre optionnel

On déclare le paramètre et on regarde
si sa valeur est undefined.

 

Fonction anonyme et closure

Fonction sans nom (anonyme)

Si une fonction fait partie d'une expression,
elle n'a pas nécessairement un nom

Fonction flèche

Pour les fonctions anonymes, on peut utiliser les syntaxes
(arguments) => expression
(arguments) => { instructions }

 

Function flèche (2)

Si on a un seul argument, on peut omettre les parenthèses
argument => expression
argument => { instructions }

 

Imbrication de fonctions

Une fonction peut elle-même contenir une fonction nommée ou une fonction flèche.

Closure

Une fonction peut accéder aux variables
de la fonction englobante.

On appel une fonction qui utilise les variables englobantes une closure.

Fonction comme une valeur

Une fonction comme instruction crée une variable
du même nom que la fonction.

est équivalent à

Utiliser () sur des valeurs

On peut utiliser () sur n'importe quelle valeur.
Cela ne marche que sur les fonctions.

 

Fonction qui prend une fonction en argument

Une fonction peut prendre une fonction en paramètre

Fonction qui renvoie une fonction en argument

Une fonction peut renvoyer une fonction.

Fonctions prédéfinies

String vers number

parseInt() et parseFloat() permettent la conversion de String vers number, toString() fait le contraire.

 

toString() est une fonction que l'on applique sur une valeur, on appelle cela une méthode

Math

Math contient les fonctions pour le calcul flottant

 

Math permet de ranger les fonctions en évitant qu'elles polluent l'environement global

Random

Math.random() permet d'obtenir une valeur pseudo-aléatoire entre [0, 1[