Programmation Orientée Objet
Javascript, objet et prototype

Retour sur les objets javascript

Fonction dans un objet javascript

Objet global

Chaque processus javascript dispose d'un objet global qui lui permet de stocker la référence à toutes les définitions.

Quand this est utilisé dans le corps d'une fonction, sa valeur est déterminée lors de l'appel:

Programmation Orientée Objet en Javascript

Javascript ne dispose pas de la notion de classe d'objets.

Mais une simple fonction peut servir de constructeur pour obtenir un objet initialisé :

Héritage

Factoriser des méthodes pour un ensemble d'objets

Prototype

  1. un objet à un ensemble de propriétés (attributs ou fonctions)
  2. un objet à une propriété spéciale, son prototype parent (__proto__), dont il hérite toutes les propriétés
  3. un objet peut surcharger les propriétés de son parent
  4. un constructeur est une fonction utilisée pour créer des objets, et a un objet prototype associé
  5. quand un objet est créé, son parent __proto__ est initialisé avec l'objet prototype de son constructeur.

Héritage en javascript

Chaîne prototypale

felix -> Cat.prototype -> Mammal.prototype -> Object.prototype

Langage dynamique

This && Fermeture fonctionnelle (closure)

Solution : closure

/

#