Comment fonctionne le système de prototypes en JavaScript?
sobes.tech IA
Réponse de l'IA
En JavaScript, le système de prototypes est un mécanisme d'héritage dans lequel les objets peuvent hériter des propriétés et des méthodes d'autres objets.
Chaque objet possède une propriété interne [[Prototype]] (accessible via __proto__ ou Object.getPrototypeOf), qui pointe vers un autre objet — le prototype. Si une propriété n'est pas trouvée lors de l'accès à un objet, la recherche continue dans le prototype, puis dans le prototype du prototype, et ainsi de suite, jusqu'à atteindre null.
Cela permet de créer des chaînes de prototypes et de réaliser l'héritage sans classes (bien qu'avec les versions modernes de JS, il existe une syntaxe de classes, qui utilise en réalité des prototypes en coulisses).
Exemple:
const animal = {
speak() {
console.log('L'animal parle');
}
};
const chien = Object.create(animal);
chien.bark = function() {
console.log('Woof!');
};
chien.bark(); // Woof!
chien.speak(); // L'animal parle (hérité de animal)
Ainsi, les prototypes permettent aux objets de partager des comportements et des propriétés, ce qui constitue la base de la programmation orientée objet en JavaScript.