blob: 6f9bcd119fa92bfd037b4a07dea852577f76fbdc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
---
title: Symbol.prototype.toString()
slug: Web/JavaScript/Reference/Global_Objects/Symbol/toString
tags:
- ECMAScript 2015
- JavaScript
- Méthode
- Prototype
- Reference
- Symbol
translation_of: Web/JavaScript/Reference/Global_Objects/Symbol/toString
original_slug: Web/JavaScript/Reference/Objets_globaux/Symbol/toString
---
{{JSRef}}
La méthode **`toString()`** renvoie une chaîne de caractères représentant l'objet `Symbol`.
{{EmbedInteractiveExample("pages/js/symbol-prototype-tostring.html")}}
## Syntaxe
Symbol().toString();
### Valeur de retour
Une chaîne de caractères qui représente l'objet {{jsxref("Symbol")}}.
## Description
L'objet {{jsxref("Symbol")}} surcharge la méthode `toString()` d'{{jsxref("Object")}} et n'hérite pas de {{jsxref("Object.prototype.toString()")}}. Pour les objets `Symbol`, la méthode `toString()` renvoie représentation de l'objet sous forme d'une chaîne de caractères.
### Concaténation de chaînes et symboles
Bien qu'il soit possible d'appeler `toString()` pour les symboles, il n'est pas possible de concaténer une chaîne de caractères avec ce type d'objet :
```js
Symbol("toto") + "machin"; // TypeError : Impossible de convertir un symbole en chaîne de caractères
```
## Exemples
```js
Symbol("desc").toString(); // "Symbol(desc)"
// symboles connus
Symbol.iterator.toString(); // "Symbol(Symbol.iterator)
// symboles globaux
Symbol.for("toto").toString() // "Symbol(toto)"
```
## Spécifications
| Spécification | État | Commentaires |
| -------------------------------------------------------------------------------------------------------------------- | ---------------------------- | ------------------- |
| {{SpecName('ES2015', '#sec-symbol.prototype.tostring', 'Symbol.prototype.toString')}} | {{Spec2('ES2015')}} | Définition initiale |
| {{SpecName('ESDraft', '#sec-symbol.prototype.tostring', 'Symbol.prototype.toString')}} | {{Spec2('ESDraft')}} | |
## Compatibilité des navigateurs
{{Compat("javascript.builtins.Symbol.toString")}}
## Voir aussi
- {{jsxref("Object.prototype.toString()")}}
|