Prototypal Inheritance

JavaScript 🟡 Mid

Definition

Modele d'heritage de JS ou les objets heritent directement d'autres objets via la prototype chain, contrairement a l'heritage classique par classes. Les classes ES6 sont du sucre syntaxique dessus.

Analogie

Photocopier un document et modifier la copie : l'original reste intact, et tu peux toujours te referer a lui.

Exemple de code

function Vehicle(type) { this.type = type; }
Vehicle.prototype.describe = function() {
  return `I am a ${this.type}`;
};
const car = new Vehicle('car');
car.describe(); // 'I am a car'

Cas d'usage

Creer des hierarchies d'objets legeres sans le cout d'un systeme de classes complet.

#core#interview#OOP