Javascript: Как сгенерировать форматированный легко читаемый JSON прямо из объекта?

Возможный дубликат:
Как я могу украсить JSON программно?

Я знаю, как генерировать JSON из объекта с помощью JSON.stringify, или в моем случае удобный jquery-json из кода google (https://github.com/krinkle/jquery-json).

Теперь это работает отлично, но выход трудно читать для людей. Есть ли простой способ/функция/для вывода аккуратно отформатированного json файла?

Вот что я имею в виду:

JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}}); 

дает..

"{"a":1,"b":2,"c":{"d":1,"e":[1,2]}}"

Вместо этого мне хотелось бы что-то вроде этого:

{
 "a":1,
 "b":2,
 "c":{
    "d":1,
    "e":[1,2]
 }
}

например. с добавлением новых строк и вкладок. Это гораздо проще для чтения для больших документов.

Я хотел бы сделать это идеально, не добавляя огромных библиотек - например. не прототип или YUI или что-то еще.

Ответ 1

JSON.stringify принимает дополнительные необязательные аргументы.

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:

Как я могу украсить JSON программно?

Должен работать в современных браузерах, и он включен в json2.js, если вам нужен резерв для браузеров, которые не поддерживают JSON вспомогательные функции.