|
|
@@ -0,0 +1,26 @@
|
|
|
+<blockquote>
|
|
|
+On peut définir des "classes" en JS. Mais elles fonctionnent un peu différemment des
|
|
|
+autres langages objets !
|
|
|
+</blockquote>
|
|
|
+
|
|
|
+```javascript
|
|
|
+function Personne(nom) {
|
|
|
+ this.nom = nom;
|
|
|
+}
|
|
|
+Personne.prototype.afficheNom = function() {
|
|
|
+ console.log("Je suis", this.nom);
|
|
|
+}
|
|
|
+var luke = new Personne('Luke Skywalker');
|
|
|
+var leia = new Personne('Leia Organa Solo');
|
|
|
+luke.afficheNom();
|
|
|
+leia.afficheNom();
|
|
|
+```
|
|
|
+
|
|
|
+* Le "constructeur", qui définit la "classe", est une simple fonction !
|
|
|
+* On ajoute des méthodes à la classe en les ajoutant à la propriété `prototype`
|
|
|
+de la fonction/constructeur.
|
|
|
+* Au passage, ça signifie qu'une fonction est aussi un objet !
|
|
|
+
|
|
|
+Ne te prends pas trop la tête avec ça pour l'instant ! Sache juste que "ça existe",
|
|
|
+et que ça permet de créer des objets à partir d'un certain "modèle" (d'où le terme
|
|
|
+de prototype).
|