Visit Mozilla.org

Guide JavaScript 1.5:Création d'objets:Utilisation de this pour référencer un objet

Un article de MDC.


[modifier] Utilisation de this pour référencer un objet

JavaScript dispose d'un mot-clé spécial, this, qui peut être utilisé au sein d'une méthode pour se référer à l'objet courant. Par exemple, supposons que vous ayez une fonction appelée valider qui vérifie que la valeur d'une propriété d'un objet donné se trouve entre deux bornes minimum et maximum :

function valider(obj, valmin, valmax) {
  if ((obj.value < valmin) || (obj.value > valmax))
     alert("Valeur invalide !")
}

Ensuite, vous appelleriez valider dans le gestionnaire d'évènement onchange de chaque élément d'un formulaire, en utilisant this pour passer l'élément form lui-même, comme dans l'exemple qui suit :

<input type="text" name="age" size="3"
   onchange="valider(this, 18, 99)">

En général, this se réfère à l'objet appelant dans une méthode.

Lorsqu'il est combiné avec la propriété form, this peut se référer au formulaire parent de l'objet courant. Dans l'exemple suivant, le formulaire monFormulaire contient un objet Text et un bouton. Lorsqu'on clique sur le bouton, la valeur de l'objet Text devient le nom du formulaire. Le gestionnaire d'évènement onclick du bouton utilise this.form pour se référer au formulaire parent monFormulaire.

<form name="monFormulaire">
<p><label>Nom du formulaire :<input type="text" name="text1" value="Beluga"></label>
<p><input name="button1" type="button" value="Afficher le nom du formulaire"
   onclick="this.form.text1.value=this.form.name">
</p>
</form>