Pourquoi tout échapper

Quand une propriété texte d’un objet contient des caractères échappés (\r, \t, etc.), le débogueur les affiche avec des doubles \ :
[]28048070;“Your comment here…”[/]
Je comprends qu’il faille échapper les “double quote” à l’intérieur du texte, mais pourquoi échapper les autres caractères ?

La question peut sembler tordue, mais je me suis rendu compte en faisant un Json stringify de mon objet que ces caractères restent échappés dans le texte résultant. Et comme j’avais mis dans une des propriétés du texte tabulé en vue de le copier/coller, je suis refait.

Les double antislash n’apparaissent que dans la représentation que fait le débogueur de cette chaîne.

Si tu fais un FIXER TEXTE DANS CONTENEUR de la chaîne résultante du JSON Stringify et que tu colles ça ailleurs, il ne devrait plus y en avoir.

Par contre, je pense qu’il est normal que l’encodage d’une tabulation en JSON soit \t.

Oui, bien sûr, si on lit la propriété, ces “sur échappements” dégagent

  • heureusement :wink:
: Stanislas CARON

Par contre, je pense qu’il est normal que l’encodage d’une tabulation
en JSON soit \t.
Oui, je viens de trouver http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdfla raison> :
Insignificant whitespace is allowed before or after any token. The whitespace characters are: character tabulation (U+0009), line feed (U+000A), carriage return (U+000D), and space (U+0020). Whitespace is not allowed within any token, except that space is allowed in strings.
Donc normal que les tabs et autres retours soient échappés dans l’objet, stringifié ou pas.