Une méthode est une fonction associée à un objet, c'est-à-dire
une action que l'on peut faire exécuter à un objet. Les méthodes des objets du navigateur sont
des fonctions définies à l'avance par les normes HTML, on ne peut donc
pas les modifier, il est toutefois possible de créer une méthode personnelle pour un objet
que l'on a créé soi-même. Prenons par exemple une page HTML, elle est composée d'un objet appelé
document. L'objet document a par exemple la méthode write()
qui lui est associée et qui permet de modifier le contenu de la page HTML en affichant du
texte. Une méthode s'appelle un peu comme une propriété, c'est-à-dire
de la manière suivante:
window.objet1.objet2.methode()
Dans le cas de la méthode write(), l'appel se fait comme suit:
window.document.write()
La méthode write() de l'objet document permet de modifier de façon dynamique
le contenu d'une page HTML. Voici la syntaxe de la méthode write() :
window.document.write(expression1, expression2, ...)
Cette méthode permet d'écrire le résultat des expressions
passées en paramètre dans le document dans lequel elle est utilisée.
Il est ainsi possible d'uttiliser la méthode write() de différentes façons:
- soit en passant directement le texte en paramètres:
document.write("bonjour");
qui aura pour effet de concaténer la chaîne 'bonjour' à l'endroit où est
placé le script
- soit en passant le texte par l'intermédiaire d'une variable:
Chaine='bonjour';
document.write(Chaine);
Ce qui aura pour effet de concaténer la chaîne 'bonjour' (contenue dans la variable Chaine)à l'endroit où est
placé le script
- soit en utilisant les deux:
Chaine='bonjour';
document.write('je vous passe le ' + Chaine);
Ce qui aura pour effet de concaténer la chaîne 'bonjour' (contenue dans la variable Chaine) à
la suite de la chaîne de caractère 'je vous passe le' dans la page HTML
- soit en insérant directement une expression, qui sera évaluée dans un premier temps
et dont le résultat sera ensuite affiché:
Chaine='La racine carrée de 2 vaut : ';
document.write(Chaine+sqrt(2));
Il est notamment possible d'utiliser des balises HTML à l'intérieur même de la
méthode write:
document.write('<font color="#FF0000">Bonjour</font>');
La méthode writeln() fonctionne exactement comme la méthode write()
à la seule différence qu'elle ajoute un retour chariot à la fin de la chaîne.
Or un retour chariot (en HTML) est ignoré par le navigateur (Rappel: un retour à la ligne
se fait avec la balise <BR>). Cette méthode n'a donc un avantage que lorsqu'elle
est utilisée dans des éléments HTML sensibles aux retours à la ligne,
par exemple entre les balises <PRE> et </PRE> qui formattent le texte comme
dans un fichier texte (et qui prend donc en compte les retours à la ligne).
Il est possible de définir une méthode pour un type d'objet que l'on a créé
en incluant une fonction en tant que propriété d'un objet. Reprenons l'exemple
de l'arbre:
On définit tout d'abord un propriétaire:
function Proprietaire(Nom, Prenom) {
Proprietaire.Nom = Nom;
Proprietaire.Prenom = Prenom;
}
Puis on crée une fonction qui affiche le nom du propriétaire d'un arbre
ainsi que quelques caractéristiques de celui-ci:
function AfficheInfos() {
alert(this.Proprietaire.Prenom + this.Proprietaire.Nom + 'possede un' + this.Type);
}
Il suffit maintenant de définir l'objet Arbre comme suit:
function Arbre(Type, Taille, Age, Proprietaire, AfficheInfos) {
this.Type = Type;
this.Taille = Taille;
this.Age = Age;
this.Proprietaire = Proprietaire;
this.AfficheInfos = AfficheInfos;
}
Le fait de taper
Arbre1.AfficheInfos() aura pour effet de produire
un message d'alerte du type:
René Dupont possède un tilleul
Car la méthode AfficheInfos() est appliquée à l'objet Arbre1.
|