5 Συχνά Σφάλματα JSON (και Πώς να τα Διορθώσετε)

By Ομάδα JSONValidator.dev 2025-07-04

Εισαγωγή: Γιατί τα Σφάλματα στο JSON Είναι Τόσο Συνηθισμένα

Το JSON είναι μία από τις πιο δημοφιλείς μορφές δεδομένων για APIs, ρυθμίσεις και ανταλλαγή δεδομένων. Ωστόσο, ακόμα και μικρά λάθη στο JSON μπορεί να προκαλέσουν σφάλματα σε εφαρμογές, να διακόψουν ενσωματώσεις ή να δυσκολέψουν την αποσφαλμάτωση. Ακολουθούν τα πέντε πιο συνηθισμένα σφάλματα JSON (με πραγματικά παραδείγματα) και πώς να τα διορθώσετε.

1. Περιττό Κόμμα στο Τέλος

Στο JSON, δεν επιτρέπεται κόμμα μετά το τελευταίο στοιχείο σε ένα αντικείμενο ή πίνακα. Αυτό είναι συχνό λάθος όταν επεξεργάζεστε το JSON χειροκίνητα.

Before:
{
  "name": "Alice",
  "age": 30,
}
After:
{
  "name": "Alice",
  "age": 30
}
Συμβουλή: Πολλά προγράμματα επεξεργασίας κώδικα (και τα διαδικτυακά εργαλεία JSON μας) επισημαίνουν ή διορθώνουν αυτόματα τις περιττές κόμματα.

2. Μονά vs. Διπλά Εισαγωγικά

Το JSON απαιτεί όλα τα κλειδιά και τις τιμές κειμένου να είναι με διπλά εισαγωγικά. Τα μονά εισαγωγικά δεν είναι έγκυρα.

Before:
{
  'name': 'Bob'
}
After:
{
  "name": "Bob"
}
Μην χρησιμοποιείτε μονά εισαγωγικά — ακόμα κι αν η γλώσσα προγραμματισμού σας το επιτρέπει! Η σύνταξη JSON είναι πιο αυστηρή από τη JavaScript ή την Python.

3. Ακατάλληλα Διαφυγόντα Χαρακτηριστικά

Ορισμένοι χαρακτήρες (όπως αλλαγές γραμμής, tabs ή εισαγωγικά μέσα σε κείμενο) πρέπει να είναι σωστά διαφυγμένοι με ανάστροφη κάθετο (backslash).

Before:
{
  "note": "This will break: "hello""
}
After:
{
  "note": "This will work: \"hello\""
}
Αν δείτε μήνυμα ‘unexpected token’ ή ‘unterminated string’, ελέγξτε για ελλείψεις στις διαφυγές χαρακτήρων στα δεδομένα σας.

4. Ελλείποντες Αγκύλες ή Παρενθέσεις

Κάθε ανοικτή αγκύλη ή παρένθεση πρέπει να κλείνει σωστά. Αν λείπει ή υπάρχει επιπλέον αγκύλη, το JSON είναι πάντα άκυρο.

Before:
{
  "name": "Eve",
  "items": [1, 2, 3
}
After:
{
  "name": "Eve",
  "items": [1, 2, 3]
}
Χρησιμοποιήστε έναν διαδικτυακό έλεγχο εγκυρότητας JSON για να εντοπίσετε άμεσα ελλείποντες ή επιπλέον αγκύλες.

5. Σφάλματα Τύπων Δεδομένων

Οι αριθμοί, οι boolean τιμές και το null δεν πρέπει να είναι περικλεισμένα σε εισαγωγικά. Για παράδειγμα, το 42 είναι έγκυρο, ενώ το "42" είναι συμβολοσειρά και όχι αριθμός.

  • "true" (συμβολοσειρά) δεν είναι ίδιο με true (boolean)
  • "null" (συμβολοσειρά) δεν είναι ίδιο με null (τιμή)
  • "42" (συμβολοσειρά) δεν είναι ίδιο με 42 (αριθμός)
Before:
{
  "age": "42",
  "active": "true"
}
After:
{
  "age": 42,
  "active": true
}

Πώς Μπορεί να Βοηθήσει το Εργαλείο μας

Επικολλήστε το JSON σας στον ελεγκτή εγκυρότητας ή το εργαλείο διόρθωσης μας για να εντοπίσετε και να διορθώσετε άμεσα αυτά τα σφάλματα. Τα εργαλεία μας υποδεικνύουν το ακριβές πρόβλημα — και προτείνουν ακόμα αυτόματες διορθώσεις για πολλά κοινά ζητήματα.