Indent JSON with JavaScript
Working with XML and JavaScript is a nightmare, which is why JSON has become gold in the development community. Hell, I even wrote a function to turn XML to JSON with JavaScript. If you want to turn an existing object into well formatted JSON, you can you JSON.stringify(obj), but you already know that. What you may not know is that you can do pretty formatting when generating JSON from objects!
The secret is using the third JSON.stringify argument which represents the space indentation levels:
var formatted = JSON.stringify(myObject, null, 2);
/*
Result:
{
"myProp": "myValue",
"subObj": {
"prop": "value"
}
}
*/
The resulting JSON representation will be formatted and indented with two spaces!
![39 Shirts – Leaving Mozilla]()
In 2001 I had just graduated from a small town high school and headed off to a small town college. I found myself in the quaint computer lab where the substandard computers featured two browsers: Internet Explorer and Mozilla. It was this lab where I fell...
![Page Visibility API]()
One event that's always been lacking within the document is a signal for when the user is looking at a given tab, or another tab. When does the user switch off our site to look at something else? When do they come back?
![Create a Context Menu with Dojo and Dijit]()
Context menus, used in the right type of web application, can be invaluable. They provide shortcut methods to different functionality within the application and, with just a right click, they are readily available. Dojo's Dijit frameworks provides an easy way to create stylish, flexible context...
![Introducing MooTools ElementSpy]()
One part of MooTools I love is the ease of implementing events within classes. Just add Events to your Implements array and you can fire events anywhere you want -- these events are extremely helpful. ScrollSpy and many other popular MooTools plugins would...
For more advanced formatting, I’ve developed a tool for the intent:
https://github.com/MaxArt2501/json-fmt
It works a client library or a server module for node/io.js, has a CLI, and a Grunt and a Gulp plugin.
Of course, if you need speed just use
JSON.stringify.Sorry for the self-promotion.
You can also format a JSON file in the terminal with a single command.