2.8 Les Types de Fonctions
Dans la vidéo précédente, nos concaténations sur la ligne 3 ('Bonjour ' + name + ' ' + lastName) n'étaient pas particulièrement propres. Plus tard dans le cours, nous verrons comment utiliser les templates de chaînes pour nettoyer ce style d'écriture. Pour l'instant, mettons cela de côté et regardons un autre type de fonction. La précédente effectuait une tâche : afficher quelque chose sur la console. Mais une fonction peut aussi calculer et renvoyer une valeur, c'est même son rôle le plus puissant.
Voici un exemple de fonction qui calcule le carré d'un nombre :
function carre(number) {
return number * number;
}
let nombre = carre(2);
console.log(nombre); // 4
Le mot-clé return permet de renvoyer la valeur calculée à l'appelant. C'est un mot réservé : vous ne pouvez pas créer une variable nommée return. La valeur retournée peut ensuite servir à initialiser une variable comme ici, ou être utilisée directement.
Appels de fonctions imbriqués
Si tout ce que vous voulez faire est d'afficher le carré de 2, vous n'avez pas besoin de déclarer une variable intermédiaire. Vous pouvez passer l'appel carre(2) directement à console.log :
console.log(carre(2)); // 4
Combien d'appels de fonction y a-t-il dans cette ligne ? Il y en a deux : carre(2) et console.log(...). Les parenthèses indiquent à chaque fois un appel. Le moteur JavaScript évalue d'abord l'argument intérieur, obtient une valeur, puis la transmet à la fonction extérieure. Un argument peut être une simple chaîne comme 'bonjour', un nombre, ou même une expression contenant un autre appel de fonction.
Retenez l'essentiel : une fonction est un ensemble d'instructions qui exécute une tâche, calcule et renvoie une valeur. Une application réelle est essentiellement une collection de centaines, voire de milliers de fonctions qui travaillent ensemble pour fournir les fonctionnalités attendues. La prochaine section nous emmènera vers les différents opérateurs en JavaScript.