Um formatador não deve alterar um identificador
O ID de um pedido pode parecer um número e se comportar como um rótulo. O valor 9007199254740993 é um JSON válido, mas convertê-lo em um Number do JavaScript pode arredondá-lo. Este formatador mantém cada token numérico como foi escrito. Casas decimais, a grafia do expoente e um zero negativo sobrevivem à formatação, porque a ferramenta altera o layout em vez de avaliar esses valores.
Chaves duplicadas merecem uma verificação à parte. Duas entradas chamadas status no mesmo objeto podem contar histórias diferentes para sistemas diferentes. Alguns analisadores mantêm o último valor, enquanto outros softwares rejeitam o documento. O MAXScanner para e pede que você escolha a entrada pretendida. As chaves com escape são comparadas pelo texto decodificado, então duas grafias do mesmo nome continuam sendo tratadas como duplicadas.
Formatar com indentação e minificar servem a tarefas diferentes. A indentação facilita a revisão de uma resposta aninhada; a saída compacta remove os espaços em branco fora das strings. Nenhum dos modos encurta o conteúdo dentro de uma string. A ordenação muda a ordem das entradas do objeto, mas deixa os arrays na ordem original. Mantenha a ordenação desativada se um revisor espera ver a sequência da origem.
O validador aceita JSON padrão, e não literais de objeto do JavaScript. Comentários, vírgulas finais e strings com aspas simples precisam ser corrigidos na origem. Ele também rejeita substitutos (surrogates) Unicode sem par, para que um download posterior em UTF-8 não os substitua em silêncio. A validação verifica a estrutura, e não se um preço, uma data ou um número de conta estão corretos. Compare os campos importantes com o sistema de origem antes de enviar o resultado adiante.