<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).

<blockquote>
En fait, ES6, le JavaScript nouvelle génération, supporte une syntaxe de déclaration de classe
plus proche de celles de Java, PHP, etc... Mais qui en arrière-plan, est basé
sur cette approche "prototypale". Il est donc utile de la connaître, d'autant que
beaucoup de projets restent basés sur ES5, la génération précédente de JS !
</blockquote>
