Pretty JSON Bookmarklet

Validates and formats JSON output for human parsing. Only tested in Firefox. Compiled with John Gruber's thing.

Bookmark this: Pretty JSON!

Try it out on some Google Maps geocoder output.

var pre = document.documentElement.getElementsByTagName('pre')[0];

pre.innerHTML = (function(ob) {
	var o = '{<div style="padding-left:20px;">';
	for (var p in ob) {
		var f = '<div><b style="padding-right:5px">' + p + ':</b>';
		var v = ob[p];
		switch(typeof(v)) {
			case "object":
				f = f + arguments.callee.call(null, v) + '</div>';
				break;
			case "string":
				f = f + '"' + v + '"</div>';
				break;
			case "number":
				f = f + v  + '</div>';
				break;
			default:
				f = "";
		}
		o = o + f;
	}
	return o + '</div>}'
})(eval("(" + pre.innerHTML + ")"));