Ein Formatierer sollte keinen Bezeichner verändern
Eine Bestell-ID kann wie eine Zahl aussehen und sich doch wie eine Bezeichnung verhalten. Der Wert 9007199254740993 ist gültiges JSON, doch die Umwandlung in eine JavaScript-Number kann ihn runden. Dieser Formatierer behält jedes Zahlentoken so bei, wie es geschrieben wurde. Dezimalstellen, Exponentschreibweise und eine negative Null bleiben bei der Formatierung erhalten, weil das Tool das Layout ändert, statt diese Werte auszuwerten.
Doppelte Schlüssel verdienen eine eigene Prüfung. Zwei Einträge namens status in einem Objekt können verschiedenen Systemen unterschiedliche Geschichten erzählen. Manche Parser behalten den letzten Wert, andere Software lehnt das Dokument ab. MAXScanner hält an und bittet Sie, den gewünschten Eintrag zu wählen. Maskierte Schlüssel werden anhand ihres dekodierten Textes verglichen, sodass zwei Schreibweisen desselben Namens weiterhin als Duplikate gelten.
Verschönerte Ausgabe und Minimierung erfüllen unterschiedliche Aufgaben. Einrückung erleichtert die Prüfung einer verschachtelten Antwort; die kompakte Ausgabe entfernt Leerraum außerhalb von Zeichenketten. Keiner der Modi kürzt den Inhalt innerhalb einer Zeichenkette. Das Sortieren ändert die Reihenfolge der Objekteinträge, lässt Arrays aber in ihrer ursprünglichen Reihenfolge. Lassen Sie die Sortierung aus, wenn ein Prüfer die Quellreihenfolge sehen möchte.
Der Validator akzeptiert Standard-JSON und keine JavaScript-Objektliterale. Kommentare, nachgestellte Kommas und Zeichenketten in einfachen Anführungszeichen müssen in der Quelle korrigiert werden. Er lehnt außerdem ungepaarte Unicode-Surrogate ab, damit ein späterer UTF-8-Download sie nicht stillschweigend ersetzt. Die Validierung prüft die Struktur, nicht ob ein Preis, ein Datum oder eine Kontonummer stimmt. Vergleichen Sie wichtige Felder mit dem Ursprungssystem, bevor Sie das Ergebnis weitergeben.