Visit Mozilla.org

Référence de JavaScript 1.5 Core:Objets globaux:Object:toString

Un article de MDC.


Sommaire

[modifier] Résumé

Renvoie une chaîne de caractères représentant l'objet.

Méthode de Object
Implémentation : JavaScript 1.0
Version ECMA : ECMA-262

[modifier] Syntaxe

toString()

[modifier] Description

Chaque objet possède une méthode toString, qui est automatiquement appelée lorsque l'on fait référence à l'objet d'une manière qui nécessiterait une chaîne. Par défaut, la méthode toString est héritée par tous les objets descendant d'Object. Si cette méthode n'est pas redéfinie dans un objet personnalisé, toString renvoie [object type], où type est le type de l'objet. Ce comportement est illustré dans le code suivant :

var o = new Object();
o.toString(); // renvoie [object Object]

[modifier] Méthodes toString natives

Chaque objet JavaScript dispose de sa propre méthode toString pour renvoyer une valeur appropriée lorsque JavaScript a besoin de convertir cet objet en une chaîne. Parmi ceux-ci :

  • toString — Méthode de l'objet Array.
  • toString — Méthode de l'objet Boolean.
  • toString — Méthode de l'objet Date.
  • toString — Méthode de l'objet Function.
  • toString — Méthode de l'objet JavaArray.
  • toString — Méthode de l'objet Number.
  • toString — Méthode de l'objet Object.
  • toString — Méthode de l'objet RegExp.
  • toString — Méthode de l'objet String.

[modifier] Exemples

[modifier] Redéfinition de la méthode toString par défaut

Il est possible de créer une fonction à appeler à la place de la méthode toString par défaut. La méthode toString ne prend pas de paramètres et doit renvoyer une chaîne. Une méthode toString personnalisée peut avoir n'importe quelle valeur, mais elle est surtout utile si elle fournit des informations sur l'objet.

Le code suivant définit le type d'objet Chien et crée le_chien, un objet du type Chien :

function Chien(nom, race, couleur, sexe) {
   this.nom = nom;
   this.race = race;
   this.couleur = couleur;
   this.sexe = sexe;
}

le_chien = new Chien("Gabby", "Labrador", "chocolat", "femelle");

Si on appelle la méthode toString de cet objet personnalisé, elle renvoie la valeur par défaut héritée de Object :

le_chien.toString() // renvoie [object Object]

Le code qui suit crée et assigne une fonction chienVersString pour remplacer la méthode toString par défaut. Cette fonction génère une chaîen contenant le nom, la race, la couleur et le sexe de l'objet, sous la forme « propriété = valeur; ».

Chien.prototype.toString = function chienVersString() {
  var ret = "Le chien " + this.nom + " est un " + this.race " " + this.sexe + " " + this.couleur;
  return ret;
}

Avec ce code en place, chaque fois que le_chien sera utilisé dans un contexte nécessitant une chaîne, JavaScript appellera automatiquement la fonction chienVersString, qui renverra la chaîne suivante :

Le chien Gabby est un labrador femelle chocolat

[modifier] Voir aussi

toSource, valueOf