Rappel sur la Programmation Orientée Objet (POO) en JavaScript
JavaScript supporte la POO via les objets, les constructeurs, et les classes (depuis ES6).
1. Créer un objet simple
const person = {
name: "Alice",
sayHello: function () {
console.log(`Bonjour, je suis ${this.name}`);
}
};
person.sayHello(); // Bonjour, je suis Alice
2. Fonctions constructrices (avant ES6)
function Animal(nom) {
this.nom = nom;
}
Animal.prototype.parler = function () {
console.log(`${this.nom} fait un bruit`);
};
const chat = new Animal("Miaou");
chat.parler(); // Miaou fait un bruit
3. Classes ES6 (plus moderne)
class Personne {
constructor(nom) {
this.nom = nom;
}
direBonjour() {
console.log(`Salut, je suis ${this.nom}`);
}
}
const bob = new Personne("Bob");
bob.direBonjour(); // Salut, je suis Bob
4. Héritage avec extends
class Animal {
constructor(nom) {
this.nom = nom;
}
parler() {
console.log(`${this.nom} fait un bruit`);
}
}
class Chien extends Animal {
parler() {
console.log(`${this.nom} aboie`);
}
}
const rex = new Chien("Rex");
rex.parler(); // Rex aboie
5. Encapsulation (via # en ES2022+)
class Compte {
#solde = 0; // privé
deposer(montant) {
this.#solde += montant;
}
afficherSolde() {
console.log(`Solde: ${this.#solde}€`);
}
}
const compte = new Compte();
compte.deposer(100);
compte.afficherSolde(); // Solde: 100€