Quelles fonctions existent en JavaScript?
sobes.tech IA
Réponse de l'IA
En JavaScript, il existe les types de fonctions suivants:
-
Déclarations de fonctions (Function Declarations): Syntaxe de base pour définir une fonction. Elles sont hoistées lors de la compilation.
function sayHello() { // Corps de la fonction console.log("Bonjour!"); } -
Expressions de fonctions (Function Expressions): Une fonction est assignée à une variable. Elles ne sont pas hoistées. Peuvent être nommées ou anonymes.
const greetUser = function(name) { // Corps de la fonction console.log(`Bonjour, ${name}!`); }; -
Fonctions fléchées (Arrow Functions): Syntaxe plus concise introduite dans ES6. Ont des comportements spécifiques avec
this.const add = (a, b) => a + b; -
Méthodes d'objets (Object Methods): Fonctions définies comme propriétés d'un objet.
const user = { name: "Ivan", sayName: function() { console.log(this.name); } }; -
Fonctions génératrices (Generator Functions): Fonctions qui peuvent suspendre et reprendre leur exécution avec
yield. Renvoient un itérateur.function* counter() { let i = 0; while (true) { yield i++; } } -
Fonctions asynchrones (Async Functions): Fonctions qui travaillent avec des promesses et permettent d'utiliser
awaitpour attendre la résolution des promesses.async function fetchData() { const response = await fetch("https://api.example.com/data"); const data = await response.json(); return data; } -
Fonctions constructrices (Constructor Functions): Fonctions utilisées avec l'opérateur
newpour créer des objets. Approche traditionnelle de la POO avant l'apparition des classes.function Person(name, age) { this.name = name; this.age = age; } const person1 = new Person("Petr", 30); -
Fonctions de rappel (Callback Functions): Fonctions passées en argument à une autre fonction pour être exécutées à un moment donné.
function processArray(arr, callback) { for (let i = 0; i < arr.length; i++) { callback(arr[i]); } } processArray([1, 2, 3], function(item) { console.log(item * 2); }); -
Expressions de fonctions immédiatement invoquées (IIFE - Immediately Invoked Function Expressions): Fonctions qui s'exécutent immédiatement après leur définition. Utilisées pour créer un scope local.
(function() { // Code local const secret = "secret"; console.log(secret); })();
Chaque type de fonction a ses propres caractéristiques de syntaxe, de portée (this) et de scénarios d'utilisation.