JavaScript: comment puis-je supprimer tous les espaces en blanc, à partir d'une chaîne JSON à l'exception de ceux dans les valeurs?

Le suivant json...

var body = "{ \"name\": \"test\", \"description\": \"test json\", \"website\": \"domain.com\" }"

... comment puis-je supprimer tous les espaces en blanc, à l'exception de ceux dans les valeurs?

J'ai essayé les regexp...

var body = "{ \"name\": \"test\", \"description\": \"test json\", \"website\": \"domain.com\" }".replace(/\r?\n|\r/g, "").replace(/\s+/g, "")

... mais il supprime également les espaces dans les valeurs (c'est à dire description):

{"name":"test","description":"testjson","website":"domain.com"}

J'ai besoin d'obtenir

{"name":"test","description":"test json","website":"domain.com"}

Tx.

Je pense que vous êtes absent le point de JSON, parce que c'est pas le JSON, c'est un objet JavaScript. Vous souhaitez JSON.stringify(body)
JSON.stringify(body) renvoie sans espaces. Avez-vous essayé de voir si il y a des espaces avant d'essayer de l'enlever de là?
Hmm, c'est que la norme/garantie comportement?
Dans l'exemple réel-je obtenir une chaîne JSON avec des espaces blancs... Permettez-moi de corriger l'exemple dans mon post.
Pour la nouvelle version de la question: parse d'abord, puis stringify

OriginalL'auteur j3d | 2014-09-04