Format, validate, sort or minify JSON. Unquoted keys, trailing commas and comments are accepted, so a pasted console log works as well as a strict file.
The result appears hereUnquoted keys, single-quoted strings, trailing commas, // and /* */ comments, and undefined or NaN as values. Strict parsing runs first, and the relaxed reading only steps in when it fails, so valid JSON is never reinterpreted.
It orders every object's keys alphabetically, at every depth, leaving arrays in their own order because their order carries meaning. It is what makes two versions of the same payload diffable.
No. Parsing, formatting and minifying all happen in this tab, which is also why the tool keeps working with the network off once the page has loaded.
Because JSON.parse reads every number as a double, and past 2^53 the extra digits are lost. A tweet id or a Snowflake key comes back wrong by a few units and nothing warns you. Keep ids as strings on the wire; that is why every large API sends them quoted.
Only the whitespace, with two exceptions worth knowing: a duplicate key collapses to the last one, because an object cannot hold both, and turning sorting on rewrites key order. Values, types and array order are untouched.