JSON将输出字符串化为多行

时间:2014-07-01 17:13:18

标签: javascript json

我正在编写一个简单的JS应用程序,它接收一个JSON文件,向用户显示信息并允许他们修改它,然后允许他们重新导出JSON。但是,引入的JSON是多行的;每个键/值都在它自己的行上。当我使用.stringify输出JSON时,它们都显示在一行上。 stringify方法有没有办法分隔线?

JSON结构:

{"Title":
 {"lvlOne":[
  {"key":"val"},
  {"key":"val"},
  {"key":"val"}
 ],
 "lvl2":[
  {"key":"val"},
  {"key":"val"},
  {"key":"val"}
 ]}
}

但是当我输出时,它都会显示:

{"Title":{"lvlOne":[{"key":"val"},{"key":"val"},{"key":"val"}],"lvl2":[{"key":"val"{"key":"val"},{"key":"val"}]}}

3 个答案:

答案 0 :(得分:17)

您可以使用stringify methodspace参数。从官方页面,这里是相关的摘录:

JSON.stringify({ a: 2 }, null, " ");   // '{\n "a": 2\n}'

答案 1 :(得分:4)

你也可以使用。

var json = JSON.stringify({ uno: 1, dos : {"s":"dd","t":"tt"} }, null, '\t');
console.log(json);

答案 2 :(得分:2)

甚至更好的是,缩进中的空格数:

var json = JSON.stringify({ uno: 1, dos : {"s":"dd","t":"tt"} }, null, 2);