25 JSON-Fehler, die jeder Entwickler macht
JSON ist das Rückgrat der Webkommunikation. Es ist leichtgewichtig und einfach zu lesen. Seine Regeln sind jedoch streng. Kleine Fehler können Ihren Code zum Absturz bringen.
Vermeiden Sie diese häufigen Fehler, um bessere Datenstrukturen zu schreiben.
Syntaxfehler
- Verwenden Sie nur doppelte Anführungszeichen. Einfache Anführungszeichen funktionieren in JavaScript, aber nicht in JSON.
- Entfernen Sie abschließende Kommas. Ein Komma nach dem letzten Element führt zu einem Fehler.
- Fügen Sie fehlende Kommas hinzu. Zwischen jedem Schlüssel-Wert-Paar muss ein Komma stehen.
- Alle Schlüssel in Anführungszeichen setzen. Jeder Schlüssel muss von doppelten Anführungszeichen umschlossen sein.
- Klammern richtig verwenden. Verwenden Sie keine geschweiften Klammern, wo eckige Klammern hingehören.
Datentyp-Fehler
- Umgang mit
undefined-Werten. JSON unterstütztundefinednicht. Verwenden Sie stattdessennull. - Vermeiden Sie
NaNundInfinity. Diese Werte werden während der Serialisierung zunull. - Beachten Sie Datumsformate. JSON behandelt Datumsangaben als Strings. Sie müssen diese wieder in
Date-Objekte parsen. - Verwenden Sie Dezimalzahlen (Basis 10). Verwenden Sie keine Hexadezimal- oder Oktalformate.
- Speichern Sie keine Funktionen. JSON ist nur für statische Daten gedacht.
- Vermeiden Sie Kommentare. JSON erlaubt keine
//oder/* */Kommentare. - Doppelte Anführungszeichen maskieren. Verwenden Sie einen Backslash, um Anführungszeichen innerhalb eines Strings einzufügen.
- Verwenden Sie
\nfür Zeilenumbrüche. Sie können innerhalb eines String-Wertes nicht die Enter-Taste drücken. - Backslashes maskieren. Verwenden Sie
\\für Pfade oder Regex-Muster.
Umgebungs- und Logikfehler
- Überprüfen Sie Ihre Eingabe. Übergeben Sie kein Objekt an
JSON.parse(). - Achten Sie auf die Groß-/Kleinschreibung.
"userId"und"userid"sind unterschiedliche Schlüssel. - Verlassen Sie sich nicht auf die Reihenfolge. JSON garantiert nicht die Sequenz der Schlüssel.
- Verwenden Sie niemals
eval(). Nutzen SieJSON.parse(), um Sicherheitsrisiken zu vermeiden. - Große Zahlen schützen. Übergeben Sie 64-Bit-IDs als Strings, um Präzisionsverlust zu vermeiden.
- Verwenden Sie
try...catch-Blöcke. Ungültiges JSON lässt Ihre Anwendung abstürzen, wenn Sie Fehler nicht abfangen. - Zirkuläre Referenzen beheben. Sie können kein Objekt in einen String umwandeln (stringify), das auf sich selbst verweist.
- Kennen Sie den Unterschied. JSON ist restriktiver als ein Standard-JavaScript-Objekt.
- Vermeiden Sie leere Strings. Verwenden Sie
{}oder[]anstelle von"".
So bleiben Sie auf der sicheren Seite:
- Verwenden Sie einen Validator, um Ihre Syntax zu prüfen.
- Nutzen Sie Prettier in Ihrem Editor, um Dateien automatisch zu formatieren.
- Umschließen Sie die Parsing-Logik immer mit einem
try...catch-Block.
Quelle: https://dev.to/jsdevspace/25-json-mistakes-every-developer-makes-36e6
