Comprendre le mot-clé this
Fait partie de la section Programmation Orientée Objet du Journey JavaScript de Coddy — leçon 3 sur 56.
Le mot-clé this en JavaScript fait référence à l'objet qui exécute actuellement le code. Il vous permet d'accéder aux propriétés et aux méthodes de l'objet actuel.
Commençons par un objet de base :
let person = {
name: "John",
age: 30,
greet: function() {
console.log("Hello, my name is " + this.name);
}
};Dans cet exemple, lorsque nous appelons la méthode greet :
person.greet();Le résultat sera :
Hello, my name is JohnIci, this.name à l'intérieur de la méthode greet fait référence à la propriété name de l'objet person.
Défi
Ajoutez une méthode appelée getStatus à l'objet player qui retourne une chaîne de caractères avec le nom et la santé du joueur en utilisant le mot-clé this.
Format de sortie attendu :"Knight has 70 health"
Aide-mémoire
Le mot-clé this fait référence à l'objet qui exécute actuellement le code, vous permettant d'accéder à ses propriétés et méthodes.
Exemple d'utilisation de this dans une méthode d'objet :
let person = {
name: "John",
age: 30,
greet: function() {
console.log("Hello, my name is " + this.name);
}
};
person.greet(); // Sortie : Hello, my name is JohnÀ l'intérieur de la méthode, this.name fait référence à la propriété name de l'objet person.
Essayez vous-même
const player = {
name: "Knight",
health: 100,
takeDamage: function(damage) {
this.health -= damage;
},
// TODO: Ajouter la méthode getStatus ici qui retourne une chaîne avec le nom et la santé du joueur
};
// Test
player.takeDamage(30);
console.log(player.getStatus()); // Devrait afficher : "Knight has 70 health"Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Programmation Orientée Objet
1Objets et le mot-clé this
Révision rapide : Les objetsAjouter des méthodes aux objetsComprendre le mot-clé thisFonctions constructeursLe mot-clé newDéfi récapitulatif7L'héritage et le mot-clé extends
L'héritageLa relation « est un »Le mot-clé extendsLa méthode super()Hériter des propriétés et méthodesDéfi récapitulatif10Polymorphisme
Qu'est-ce que le polymorphisme ?Redéfinition de méthodes héritéesUtiliser superDéfi récapitulatif13Composition vs Héritage
Les relations « has-a » vs « is-a »Les limites de l'héritage profondConstruction d'objets2Organisation du code
Qu'est-ce qu'un module ?Exporter avec exportImporter avec importExports par défaut vs nommés5Encapsulation & Accès
EncapsulationChamps de classe publics et privésMéthodes privéesDéfi récapitulatif8Organisation du code POO
Organiser les classes en modules11Projet : Un moteur de rendu de formes
Configuration : Classe Shape et ExportationHéritage de la classe Circle14Système de gestion de bibliothèque
Conception de la bibliothèqueClasse Book avec composition3Classes et Objets
Qu'est-ce qu'une classe ?Créer des instancesPropriétés et méthodesDéfi récapitulatif9Méthodes et propriétés statiques
Niveau classe vs Niveau instancePropriétés statiquesMéthodes utilitaires statiquesDéfi récapitulatif