Lors de la formation AJAX, on aborde cette facette du Javascript peu connue.
Une définition du Prototypage est : »un prototype est une instance d’une classe qui possède des attributs et des méthodes par défaut qui sont utilisés si les instances de la classe ne les redéfinissent pas ». En Javascript, on peut tout prototyper.
Pour faire ces exemples, vous pouvez utiliser le shell qui vous permet de faire de la ligne de commande en Javascript dans le contexte de la page en cours.
La syntaxe du prototypage est la suivante :
//Définition d’une classe
Voiture = function(marque, modele) {
this.marque= marque;
this.modele= modele;
}
//Exemple :
voiture1 = new Voiture(‘BMW’, ‘Classe 1’);
//On rajoute une méthode qui s’ajoute à tous les objets Voiture en prototypant la classe Voiture
Voiture.prototype.demarre = function() {
return ‘Vrooom’;
}
voiture1.demarre()
Si une méthode demarre() avait été définie dans la classe Voiture, elle n’aurait pas été écrasée par la méthode ajouté par prototype.
Nous allons maintenant prototyper l’objet natif Array du Javascript
Array.prototype.compte = function(){
return this.length;
}
tableau = [‘choux’,’carotte’,’poireau’]
//Appel de la methode ajoutée
//Appel de la proprieté length
coll.compte()