From bf8e099b9c8b3c60d60b3712b4fc97b052c39887 Mon Sep 17 00:00:00 2001 From: julieng Date: Tue, 3 Aug 2021 08:03:23 +0200 Subject: convert content to md --- .../global_objects/object/tostring/index.md | 135 +++++++++------------ 1 file changed, 57 insertions(+), 78 deletions(-) (limited to 'files/fr/web/javascript/reference/global_objects/object/tostring') diff --git a/files/fr/web/javascript/reference/global_objects/object/tostring/index.md b/files/fr/web/javascript/reference/global_objects/object/tostring/index.md index e702efa029..e99db8ca3d 100644 --- a/files/fr/web/javascript/reference/global_objects/object/tostring/index.md +++ b/files/fr/web/javascript/reference/global_objects/object/tostring/index.md @@ -10,41 +10,41 @@ tags: translation_of: Web/JavaScript/Reference/Global_Objects/Object/toString original_slug: Web/JavaScript/Reference/Objets_globaux/Object/toString --- -
{{JSRef}}
+{{JSRef}} -

La méthode toString() renvoie une chaîne de caractères représentant l'objet.

+La méthode **`toString()`** renvoie une chaîne de caractères représentant l'objet. -
{{EmbedInteractiveExample("pages/js/object-prototype-tostring.html")}}
+{{EmbedInteractiveExample("pages/js/object-prototype-tostring.html")}} -

Syntaxe

+## Syntaxe -
obj.toString()
+ obj.toString() -

Valeur de retour

+### Valeur de retour -

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

+Une chaîne de caractères représentant l'objet. -

Description

+## Description -

Chaque object possède une méthode toString() qui est appelée de façon automatique à chaque fois que l'objet doit être représenté sous forme de texte ou à chaque fois qu'on utilise un objet et que la valeur attendue est une chaîne de caractères. Par défaut, chaque objet qui descend d'Object hérite de la méthode toString(). Si cette méthode n'est pas surchargée, toString() renvoie "[object type]", où type est le type de l'objet. Par exemple :

+Chaque object possède une méthode `toString()` qui est appelée de façon automatique à chaque fois que l'objet doit être représenté sous forme de texte ou à chaque fois qu'on utilise un objet et que la valeur attendue est une chaîne de caractères. Par défaut, chaque objet qui descend d'`Object` hérite de la méthode `toString()`. Si cette méthode n'est pas surchargée, `toString()` renvoie "\[object _type_]", où `type` est le type de l'objet. Par exemple : -
var o = new Object();
+```js
+var o = new Object();
 o.toString();           // renvoie [object Object]
-
+``` -
-

Note : À partir de JavaScript 1.8.5 toString(), lorsqu'elle est appelée sur {{jsxref("null")}} renvoie [object Null], et lorsqu'elle est appelée sur {{jsxref("undefined")}} renvoie [object Undefined], ce qui est conforme à ECMAScript 5 et aux errata qui ont suivis. Voir l'exemple ci-après Utiliser toString pour détecter le type d'un objet.

-
+> **Note :** À partir de JavaScript 1.8.5 `toString()`, lorsqu'elle est appelée sur {{jsxref("null")}} renvoie `[object Null]`, et lorsqu'elle est appelée sur {{jsxref("undefined")}} renvoie `[object Undefined]`, ce qui est conforme à ECMAScript 5 et aux errata qui ont suivis. Voir l'exemple ci-après [Utiliser `toString` pour détecter le type d'un objet](#detect). -

Exemples

+## Exemples -

Surcharger la méthode toString() par défaut

+### Surcharger la méthode `toString()` par défaut -

Il est possible de surcharger la méthode toString(). La méthode toString() ne prend pas d'argument et doit renvoyer une chaîne de caractères. La méthode toString() peut renvoyer n'importe quelle valeur mais elle sera plus pertinente si elle renvoie des informations sur l'objet courant.

+Il est possible de surcharger la méthode `toString()`. La méthode `toString()` ne prend pas d'argument et doit renvoyer une chaîne de caractères. La méthode `toString()` peut renvoyer n'importe quelle valeur mais elle sera plus pertinente si elle renvoie des informations sur l'objet courant. -

Le code qui suit définit un type d'objet Chien et instancie monChien, qui est de type Chien :

+Le code qui suit définit un type d'objet `Chien` et instancie `monChien`, qui est de type `Chien` : -
function Chien(nom, race, couleur, sexe) {
+```js
+function Chien(nom, race, couleur, sexe) {
   this.nom = nom;
   this.race = race;
   this.couleur = couleur;
@@ -52,31 +52,35 @@ o.toString();           // renvoie [object Object]
 }
 
 monChien = new Chien('Gabby', 'Labrador', 'chocolat', 'femelle');
-
+``` -

Si on appelle la méthode toString() sur cet objet, on aura le résultat suivant (provenant de la méthode originale, héritée d'{{jsxref("Object")}}) :

+Si on appelle la méthode `toString()` sur cet objet, on aura le résultat suivant (provenant de la méthode originale, héritée d'{{jsxref("Object")}}) : -
monChien.toString(); // renvoie [object Object]
-
+```js +monChien.toString(); // renvoie [object Object] +``` -

Dans le code qui suit, on surcharge la méthode toString() avec chienToString(). Cette méthode produit une chaîne qui contient l'ensemble des propriétés (race, couleur, sexe, nom) de l'objet :

+Dans le code qui suit, on surcharge la méthode `toString()` avec `chienToString()`. Cette méthode produit une chaîne qui contient l'ensemble des propriétés (race, couleur, sexe, nom) de l'objet : -
Chien.prototype.toString = function chienToString() {
+```js
+Chien.prototype.toString = function chienToString() {
   var ret = 'Le chien ' + this.nom + ' est un ' + this.race + ' ' + this.sexe + ' ' + this.couleur;
   return ret;
 }
-
+``` -

En utilisant la fonction ci-avant, à chaque fois que monChien sera utilisé là où on attend une chaîne, le moteur JavaScript appellera automatique la fonction chienToString()qui renverra la chaîne suivante :

+En utilisant la fonction ci-avant, à chaque fois que `monChien` sera utilisé là où on attend une chaîne, le moteur JavaScript appellera automatique la fonction `chienToString()`qui renverra la chaîne suivante : -
Le chien Gabby est un labrador femelle chocolat.
-
+```js +Le chien Gabby est un labrador femelle chocolat. +``` -

Utiliser toString() pour détecter le type d'un objet

+### Utiliser `toString()` pour détecter le type d'un objet -

toString() peut être utilisée pour tous les objets afin d'obtenir son type. Pour utiliser Object.prototype.toString() avec n'importe quel objet, il sera nécessaire d'appeler {{jsxref("Function.prototype.call()")}} ou {{jsxref("Function.prototype.apply()")}} (pour éviter les versions surchargées).

+`toString()` peut être utilisée pour tous les objets afin d'obtenir son type. Pour utiliser `Object.prototype.toString()` avec n'importe quel objet, il sera nécessaire d'appeler {{jsxref("Function.prototype.call()")}} ou {{jsxref("Function.prototype.apply()")}} (pour éviter les versions surchargées). -
var toString = Object.prototype.toString;
+```js
+var toString = Object.prototype.toString;
 
 toString.call(new Date);    // [object Date]
 toString.call(new String);  // [object String]
@@ -85,49 +89,24 @@ toString.call(Math);        // [object Math]
 // Depuis JavaScript 1.8.5
 toString.call(undefined);   // [object Undefined]
 toString.call(null);        // [object Null]
-
- -

Spécifications

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SpécificationÉtatCommentaires
{{SpecName('ES1')}}{{Spec2('ES1')}}Définition initiale. Implémentée avec JavaScript 1.0.
{{SpecName('ES5.1', '#sec-15.2.4.2', 'Object.prototype.toString')}}{{Spec2('ES5.1')}}Lorsque la méthode est appelée sur {{jsxref("null")}}, elle renvoie [object Null], et sur {{jsxref( "undefined")}} elle renvoie [object Undefined]
{{SpecName('ES6', '#sec-object.prototype.tostring', 'Object.prototype.toString')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-object.prototype.tostring', 'Object.prototype.toString')}}{{Spec2('ESDraft')}} 
- -

Compatibilité des navigateurs

- -

{{Compat("javascript.builtins.Object.toString")}}

- -

Voir aussi

- - +``` + +## Spécifications + +| Spécification | État | Commentaires | +| -------------------------------------------------------------------------------------------------------------------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| {{SpecName('ES1')}} | {{Spec2('ES1')}} | Définition initiale. Implémentée avec JavaScript 1.0. | +| {{SpecName('ES5.1', '#sec-15.2.4.2', 'Object.prototype.toString')}} | {{Spec2('ES5.1')}} | Lorsque la méthode est appelée sur {{jsxref("null")}}, elle renvoie `[object Null]`, et sur {{jsxref( "undefined")}} elle renvoie `[object Undefined]` | +| {{SpecName('ES6', '#sec-object.prototype.tostring', 'Object.prototype.toString')}} | {{Spec2('ES6')}} |   | +| {{SpecName('ESDraft', '#sec-object.prototype.tostring', 'Object.prototype.toString')}} | {{Spec2('ESDraft')}} |   | + +## Compatibilité des navigateurs + +{{Compat("javascript.builtins.Object.toString")}} + +## Voir aussi + +- {{jsxref("Object.prototype.toSource()")}} +- {{jsxref("Object.prototype.valueOf()")}} +- {{jsxref("Number.prototype.toString()")}} +- {{jsxref("Symbol.toPrimitive")}} -- cgit v1.2.3-54-g00ecf