Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Utilisation des Méthodes Statiques en JavaScript | Maîtrise des Classes et de l'Héritage en JavaScript
Maîtrise Avancée de JavaScript

bookUtilisation des Méthodes Statiques en JavaScript

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

Que sont les méthodes statiques ?

Imaginez une compagnie d’électricité qui fournit de l’énergie. L’entreprise elle-même (classe) fournit l’électricité, mais vous (une instance) n’avez pas besoin de construire une centrale électrique chez vous. À la place, vous accédez directement au service de l’entreprise (méthode statique).

Comment définir et utiliser des méthodes statiques

Les méthodes statiques sont déclarées à l'aide du mot-clé static. Elles peuvent être appelées directement depuis la classe, mais n'ont pas accès aux propriétés ou méthodes d'instance car 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 sans qu'elles soient associé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 universelles, telles que des 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 concernant la classe elle-même, comme la création d'instances de manière spécifique, la gestion de configurations au niveau de la classe ou l'accès à des données partagées par la classe.

Exemple : Méthode utilitaire statique

Prenons un exemple concret où une classe User possède une méthode statique permettant de 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 définie comme 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 permet de comparer les identifiants de deux instances de User sans nécessiter l'accès à leurs propriétés ou méthodes individuelles.

Différences clés entre les méthodes statiques et les méthodes d'instance

Exemple concret : Classe utilitaire d'application

Considérons un scénario où une application doit enregistrer des données. Une classe Logger peut comporter des méthodes statiques pour consigner des messages à différents niveaux (info, avertissement, erreur). Ces méthodes sont accessibles globalement sans créer d'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 pouvant être appelées globalement pour enregistrer des messages à différents niveaux. Il n'est pas nécessaire d'instancier Logger pour utiliser ces méthodes.

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

2. Comment définit-on une méthode statique dans une classe ?

question mark

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

Select the correct answer

question mark

Comment définit-on une méthode statique dans une classe ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 12

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Awesome!

Completion rate improved to 2.22

bookUtilisation des Méthodes Statiques en JavaScript

Glissez pour afficher le menu

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

Que sont les méthodes statiques ?

Imaginez une compagnie d’électricité qui fournit de l’énergie. L’entreprise elle-même (classe) fournit l’électricité, mais vous (une instance) n’avez pas besoin de construire une centrale électrique chez vous. À la place, vous accédez directement au service de l’entreprise (méthode statique).

Comment définir et utiliser des méthodes statiques

Les méthodes statiques sont déclarées à l'aide du mot-clé static. Elles peuvent être appelées directement depuis la classe, mais n'ont pas accès aux propriétés ou méthodes d'instance car 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 sans qu'elles soient associé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 universelles, telles que des 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 concernant la classe elle-même, comme la création d'instances de manière spécifique, la gestion de configurations au niveau de la classe ou l'accès à des données partagées par la classe.

Exemple : Méthode utilitaire statique

Prenons un exemple concret où une classe User possède une méthode statique permettant de 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 définie comme 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 permet de comparer les identifiants de deux instances de User sans nécessiter l'accès à leurs propriétés ou méthodes individuelles.

Différences clés entre les méthodes statiques et les méthodes d'instance

Exemple concret : Classe utilitaire d'application

Considérons un scénario où une application doit enregistrer des données. Une classe Logger peut comporter des méthodes statiques pour consigner des messages à différents niveaux (info, avertissement, erreur). Ces méthodes sont accessibles globalement sans créer d'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 pouvant être appelées globalement pour enregistrer des messages à différents niveaux. Il n'est pas nécessaire d'instancier Logger pour utiliser ces méthodes.

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

2. Comment définit-on une méthode statique dans une classe ?

question mark

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

Select the correct answer

question mark

Comment définit-on une méthode statique dans une classe ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 12
some-alt