Un bout de logique qu’on écrit une seule fois et qu’on invoque autant de fois que nécessaire : c’est tout l’intérêt d’une fonction. Elle prend éventuellement des paramètres en entrée et peut renvoyer une valeur avec return.
Dans un thème ou un plugin WordPress
Le JavaScript d’un site WordPress moderne est structuré en fonctions : une pour ouvrir un menu mobile, une autre pour valider un formulaire de contact avant envoi, une troisième pour animer l’apparition d’éléments au défilement. Ces fonctions sont ensuite chargées via wp_enqueue_script et peuvent recevoir des données PHP grâce à wp_localize_script.
Exemple
function formaterPrix(montant, devise = 'EUR') {
return new Intl.NumberFormat('fr-FR', {
style: 'currency',
currency: devise
}).format(montant);
}
formaterPrix(19.9); // "19,90 €"
Ce paramètre par défaut (devise = 'EUR') illustre une syntaxe disponible depuis ES6 : si l’appelant omet l’argument, la fonction utilise automatiquement la valeur indiquée.
Bon à savoir
- Il existe plusieurs façons de déclarer une fonction : déclaration classique (
function nom() {}), expression de fonction, fonction fléchée. Le choix influence la portée et le comportement dethis. - Une déclaration de fonction classique bénéficie du « hoisting » : elle est utilisable avant sa ligne de définition dans le fichier, contrairement à une expression de fonction assignée à une constante.
- Une fonction pure, qui renvoie toujours le même résultat pour les mêmes entrées sans effet de bord, facilite les tests et le débogage.