Méthode
Le corps des méthodes liés à l’objet peut être interne ou externe à la fonction constructrice de l’objet. La différence majeure entre ces deux manières est leur accessibilité. En effet une fonction déclarée à l’extérieur du constructeur d’objet sera utilisable directement. Alors qu’une fonction interne au constructeur sera utilisable qu’à travers l’objet. On pourra ainsi mutualiser des fonctions de type utilitaires sur différents objets.Exemple :
Fonction externe au constructeur
function showName(){//méthode externe mutualisée
alert (this.name);
}
function Client(p_name, p_norme){
this.name= p_name; //propriété
this.norme = p_norme ; //propriété
this.show=showName ; //méthode de l’objet mappée sur la
// fonction externe showName
}
function Fournisseur(p_name, p_entrepot){
this.name= p_name; //propriété
this.entrepot = p_entrepot; //propriété
this.show=showName ; //méthode de l’objet mappée sur la
// fonction externe showName
}
Fonction interne au constructeur
function Client(p_name, p_norme){
this.name= p_name; //propriété
this.norme = p_norme ; //propriété
this.show= function(){
alert (this.name)
}
}
Passage de paramètres
function Client(p_name, p_norme){
this.name= p_name; //propriété
this.norme = p_norme ; //propriété
this.show= function(p_param){
alert (p_param +” ”+this.name)
}
this.hello = sayHello;
}
function sayHello(p_hello) {
alert (p_hello+ “ “ +this.name)
}