Javascript: How to generate formatted easy-to-read JSON straight from an object? [duplicate]

Javascript: How to generate formatted easy-to-read JSON straight from an object? [duplicate]

Possible Duplicate:
How can I beautify JSON programmatically?

I know how to generate JSON from an object using JSON.stringify, or in my case the handy jquery-json from google code (https://github.com/krinkle/jquery-json).
Now this works fine, but the output is hard to read for humans. Is there an easy way / function / whatever to output a neatly formatted json file?
This is what I mean:
JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}});

gives..
“{“a”:1,”b”:2,”c”:{“d”:1,”e”:[1,2]}}”

I’d like something like this instead:
{
“a”:1,
“b”:2,
“c”:{
“d”:1,
“e”:[1,2]
}
}

E.g. with newlines and tabs added. It’s much easier to read for larger documents.
I’d like to do this ideally without adding any huge libraries – e.g. not prototype or YUI or whatever.

Solutions/Answers:

Solution 1:

JSON.stringify takes more optional arguments.

Try:

 JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}}, null, 4); // Indented 4 spaces
 JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}}, null, "\t"); // Indented with tab

From:

How can I beautify JSON programmatically?

Should work in modern browsers, and it is included in json2.js if you need a fallback for browsers that don’t support the JSON helper functions. For display purposes, put the output in a <pre> tag to get newlines to show.