Sommaire

Le prototypage

JavaScript est un langage dit "orienté objet".

Au contraire des autres langages de ce type, il n’est pas à base de déclarations de classes. C’est un langage dit "à prototype" où tout objet est une instance.

Cette différence de fonctionnement est généralement la source de mauvaises compréhensions et c’est l’une des principales sources de rejet du langage par beaucoup de programmeurs habitués aux autres langages orientés objet. C’est pourquoi il est important d’éclaircir le fonctionnement du modèle objet de JavaScript.

1. Comment fonctionne le modèle objet de JavaScript ?

Un langage de programmation orienté objet "classique", tels C++, Java ou encore C#, est fondé sur une distinction entre la définition d’un objet (la classe) et sa réalité à l’exécution (l’instance).

Pour créer un objet en utilisant un langage de ce type, il est nécessaire d’écrire un fichier dit de "définition de classe" qui définit tout ce qui caractérise cet objet en termes de propriétés et de méthodes, puis d’utiliser cette définition pour créer véritablement l’objet à la compilation ou à l’exécution.

Les langages de programmation basés sur des prototypes, tel JavaScript, ne font pas cette différence : ...