Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Méthodes Statiques | Classes
Maîtrise Avancée de JavaScript
course content

Contenu du cours

Maîtrise Avancée de JavaScript

Maîtrise Avancée de JavaScript

2. Manipulation du DOM
3. Événements et Gestion des Événements
4. JavaScript Asynchrone et APIs

book
Méthodes Statiques

Les méthodes statiques fournissent des fonctionnalités partagées au niveau de la classe, accessibles sans créer une instance.

Qu'est-ce que les méthodes statiques ?

Pensez à une entreprise de services publics qui fournit de l'électricité. L'entreprise elle-même (classe) fournit l'énergie, mais vous (une instance) n'avez pas besoin de créer une centrale électrique chez vous. Au lieu de cela, vous accédez directement au service de l'entreprise (méthode statique).

Comment définir et utiliser les méthodes statiques

Les méthodes statiques sont déclarées en utilisant le mot-clé static. Vous pouvez les appeler directement depuis la classe, mais elles n'ont pas accès aux propriétés ou méthodes d'instance puisqu'elles opèrent au niveau de la classe.

123456789101112131415
class MathUtils { // Static method to calculate the square of a number static square(number) { return number * number; } // Static method to calculate the cube of a number static cube(number) { return number * number * number; } } // Calling static methods directly from the class console.log(MathUtils.square(4)); // Output: 16 console.log(MathUtils.cube(3)); // Output: 27
copy

Dans cet exemple, les méthodes square et cube sont statiques, ce qui signifie qu'elles appartiennent à la classe MathUtils et peuvent être appelées directement sur la classe elle-même. Ces méthodes effectuent des opérations mathématiques et sont partagées par l'ensemble de la classe sans avoir besoin d'être associées à une instance spécifique.

Pourquoi utiliser des méthodes statiques ?

Les méthodes statiques sont utiles lorsque vous souhaitez fournir des fonctionnalités liées à la classe mais qui n'ont pas besoin d'être liées à des instances individuelles. Elles sont couramment utilisées pour des fonctions utilitaires, des méthodes d'assistance ou une logique qui s'applique globalement à l'ensemble de la classe.

  • Les méthodes statiques sont souvent utilisées pour des opérations qui s'appliquent universellement, comme les calculs mathématiques, la manipulation de dates ou le formatage de chaînes de caractères ;
  • Les méthodes statiques peuvent également être utilisées pour des opérations impliquant la classe elle-même, comme la création d'instances de manière spécifique, la gestion des configurations au niveau de la classe ou la fourniture d'un accès aux données à l'échelle de la classe.

Exemple : Méthode utilitaire statique

Prenons un exemple concret où une classe User a une méthode statique pour comparer les identifiants de deux utilisateurs. Cette méthode n'a pas besoin d'interagir avec les données d'un utilisateur individuel, elle peut donc être une méthode statique sur la classe.

12345678910111213141516171819
class User { constructor(id, name) { this.id = id; this.name = name; } // Static method to compare user IDs static compareIds(user1, user2) { return user1.id === user2.id; } } const user1 = new User(101, 'Alice'); const user2 = new User(102, 'Bob'); const user3 = new User(101, 'Charlie'); // Using the static method to compare user IDs console.log(User.compareIds(user1, user2)); // Output: false console.log(User.compareIds(user1, user3)); // Output: true
copy

Dans cet exemple, la méthode statique compareIds appartient à la classe User et vous permet de comparer les IDs de deux instances de User sans avoir besoin d'accéder à leurs propriétés ou méthodes individuelles.

Principales différences entre les méthodes statiques et d'instance

Exemple du monde réel : Classe utilitaire d'application

Prenons un scénario où une application doit enregistrer des données. Une classe Logger peut avoir des méthodes statiques pour enregistrer des messages avec différents niveaux (info, avertissement, erreur). Ces méthodes peuvent être accessibles globalement sans créer une instance du logger.

123456789101112131415161718
class Logger { static info(message) { console.log(`INFO: ${message}`); } static warning(message) { console.warn(`WARNING: ${message}`); } static error(message) { console.error(`ERROR: ${message}`); } } // Calling static methods directly from the Logger class Logger.info('Application started'); Logger.warning('Low disk space'); Logger.error('Uncaught exception occurred');
copy

Dans cet exemple, les méthodes statiques info, warning et error sont des fonctions utilitaires qui peuvent être appelées globalement pour enregistrer des messages à différents niveaux. Aucune instance de Logger n'est nécessaire pour utiliser ces méthodes.

1. Qu'est-ce qu'une méthode statique ?

2. Comment définissez-vous une méthode statique dans une classe ?

Qu'est-ce qu'une méthode statique ?

Qu'est-ce qu'une méthode statique ?

Sélectionnez la réponse correcte

Comment définissez-vous une méthode statique dans une classe ?

Comment définissez-vous une méthode statique dans une classe ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 12
We're sorry to hear that something went wrong. What happened?
some-alt