解释json字符串中的反斜杠字符以获得漂亮的显示效果

时间:2016-06-29 20:46:10

标签: javascript json

我有一个像这样的json字符串:

{ "choice": "gogo", "parameter": "high", "result": "[ { \"value_1\": 1.2, \"feature_1\": \"chicken\", \"prominent\": \"yes\" }, ... 

json字符串的结果部分具有反斜杠字符,来自json中的换行符。我试图逃避这些角色,以便我能以漂亮的方式在html中显示json。有没有办法让javascript解释字符串中的那些换行符,以便它显示如下:

{
    "choice": "gogo",
    "parameter": "high",
    "result": "[ { "value_1": 1.2, "feature_1": "chicken", "prominent": "yes" } ... and so on 

我试过了:

Json result to html (Newline)

JSON.stringify output to div in pretty print way

How can I beautify JSON programmatically?

但是所有这些仍然会输出带有换行符字符的json。

也尝试过:

var str = JSON.stringify(obj, null, 2);

但它仍然显示反斜杠。

还尝试使用包含json字符串的div中的pre标签:

<div id="show_json"><pre></pre></div>

1 个答案:

答案 0 :(得分:2)

您可以replace所有反斜杠:

&#13;
&#13;
var obj = {
  "choice": "gogo",
  "parameter": "high",
  "result": "[ { \"value_1\": 1.2, \"feature_1\": \"chicken\", \"prominent\": \"yes\" } ]"
};
document.body.innerHTML = JSON.stringify(obj, null, 4).replace(/\\/g, "");
&#13;
body { white-space: pre }
&#13;
&#13;
&#13;