Δωρεάν μετατροπέας

JSON Formatter & Επικυρωτή

Μορφοποιήστε, βελτιώστε και επικυρώστε το JSON αμέσως στο πρόγραμμα περιήγησής σας. Δεν απαιτείται μεταφόρτωση — εντελώς ιδιωτική και δωρεάν.

Σύρετε και αποθέστε ένα αρχείο JSON εδώ

Υποστηρίζει αρχεία .json. Ή επικολλήστε το JSON σας στην παραπάνω περιοχή.

Ή

Σχετικά με αυτό το εργαλείο

Η μορφοποίηση JSON (συχνά αποκαλούμενη όμορφη εκτύπωση ή ωραιοποίηση) απαιτεί συμπαγές JSON και προσθέτει κενό διάστημα — σπασίματα γραμμής, εσοχές, σταθερό διάστημα — για να κάνει τη δομή ορατή στους ανθρώπινους αναγνώστες. Το Compact JSON είναι η σωστή μορφή για μετάδοση: ελαχιστοποιεί τα byte πάνω από το καλώδιο και την αποθήκευση. Το μορφοποιημένο JSON είναι η κατάλληλη μορφή για επιθεώρηση: η ιεραρχία με εσοχή αποκαλύπτει την ένθετη δομή με μια ματιά, δίνει νόημα στις διαφορές και επιτρέπει στους προγραμματιστές να εντοπίζουν συγκεκριμένα πεδία χωρίς να αναλύουν διανοητικά το έγγραφο.

Αυτός ο μορφοποιητής αναλύει την είσοδο ως JSON για να επιβεβαιώσει ότι είναι έγκυρη και, στη συνέχεια, την εκπέμπει ξανά με συνεπή εσοχή. Η μη έγκυρη είσοδος παράγει ένα σφάλμα που δείχνει το συντακτικό πρόβλημα. Η έγκυρη είσοδος επαναδιαμορφώνεται ανεξάρτητα από το πόσο συμπαγής ή ακατάστατη ήταν η πηγή. Η εσοχή έχει ως προεπιλογή δύο κενά, που ταιριάζουν με την πιο κοινή σύμβαση JavaScript.

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

Γιατί να μορφοποιήσετε το JSON

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

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

Πώς να το χρησιμοποιήσετε

Επικολλήστε JSON, κάντε κλικ στη μορφή.

  1. Επικολλήστε το JSON σας: Επικολλήστε ακατέργαστο ή συμπαγές JSON στην περιοχή εισαγωγής. Η μεταφορά και απόθεση αρχείων .json λειτουργεί επίσης.
  2. Επιλέξτε εσοχή: Η προεπιλογή είναι 2 κενά. Χρησιμοποιήστε 4 κενά για έργα που ακολουθούν αυτήν τη σύμβαση ή καρτέλες εάν τα απαιτούν τα κατάντη εργαλεία σας.
  3. Μορφοποίηση: Η είσοδος αναλύεται μέσω JSON.parse για να επιβεβαιωθεί η εγκυρότητα και, στη συνέχεια, γίνεται σειριακή με JSON.stringify και την επιλεγμένη εσοχή. Τα σφάλματα στην είσοδο παράγουν ένα μήνυμα σφάλματος ανάλυσης που προσδιορίζει τη θέση του προβλήματος.
  4. Αντιγραφή ή λήψη: Αντιγράψτε το μορφοποιημένο JSON στο πρόχειρο ή αποθηκεύστε το ως .json. Η έξοδος είναι δομικά πανομοιότυπη με την είσοδο αλλά με σταθερό κενό διάστημα.

Κοινές περιπτώσεις χρήσης

Τεχνικές λεπτομέρειες

Ο μορφοποιητής χρησιμοποιεί JSON.parse και JSON.stringify, το ίδιο ζεύγος σε κάθε χρόνο εκτέλεσης JavaScript. Η ανάλυση ακολουθεί το RFC 8259 (η τρέχουσα προδιαγραφή JSON), αποδέχεται αυστηρά JSON αλλά απορρίπτει κυριολεκτικά αντικειμένων JavaScript, σχόλια, κόμματα μετάδοσης και άλλες επεκτάσεις JSON5.

Το JSON.stringify δέχεται ένα όρισμα εσοχής: έναν αριθμό (κενά) ή συμβολοσειρά (προσαρμοσμένος χαρακτήρας εσοχής, όπως μια καρτέλα). Ο μορφοποιητής εκθέτει και τις δύο επιλογές. Η έξοδος ταξινομείται με σειρά πηγής για αντικείμενα (καθώς το ES2015 διατηρείται η σειρά εισαγωγής ιδιοτήτων σε όλους τους κύριους κινητήρες).

Περιπτώσεις άκρων: μεγάλοι αριθμοί πέρα από το Number.MAX_SAFE_INTEGER χάνουν την ακρίβεια όταν αναλύονται (γνωστός περιορισμός JSON. χρησιμοποιήστε τιμές συμβολοσειράς για αναγνωριστικά που υπερβαίνουν τα 2^53). Οι διαφυγές Unicode σε χορδές διατηρούνται κυριολεκτικά. Το κενό διάστημα αφαιρείται από κάθε γραμμή.

Βέλτιστες Πρακτικές

Συχνές ερωτήσεις

Τι τύπους σφαλμάτων JSON εντοπίζει αυτό το εργαλείο;
Το εργαλείο εντοπίζει κόμματα που λείπουν, αγκύλες/αγκύλες που δεν ταιριάζουν, διαφυγή μη έγκυρης συμβολοσειράς, κόμματα μετά, συμβολοσειρές με ένα εισαγωγικό και άλλες παραβιάσεις σύνταξης σύμφωνα με την προδιαγραφή RFC 8259 JSON.
Μπορεί να χειριστεί πολύ μεγάλα αρχεία JSON;
Ναι. Ο μορφοποιητής επεξεργάζεται το JSON στο πρόγραμμα περιήγησής σας χρησιμοποιώντας εγγενή ανάλυση JavaScript, έτσι ώστε να χειρίζεται αρχεία έως και αρκετά megabyte αποτελεσματικά. Για εξαιρετικά μεγάλα αρχεία (50MB+), ο χρόνος επεξεργασίας εξαρτάται από τη συσκευή σας.
Υποστηρίζει JSON με σχόλια (JSONC);
Το τυπικό JSON δεν επιτρέπει σχόλια. Εάν η εισαγωγή σας περιέχει σχόλια, ο επικυρωτής θα τα επισημάνει ως σφάλματα. Για υποστήριξη JSONC, αφαιρέστε τα σχόλια πριν τη μορφοποίηση.
Η μορφοποίηση θα αλλάξει τις τιμές των δεδομένων μου;
Όχι. Η μορφοποίηση προσαρμόζει μόνο το κενό διάστημα και την εσοχή — οι τύποι δεδομένων, οι τιμές και η δομή σας παραμένουν ακριβώς οι ίδιες.
Υποστηρίζονται οι δυνατότητες του JSON5 (σχόλια, κόμματα στο τέλος);
Όχι. Ο μορφοποιητής ακολουθεί αυστηρά το RFC 8259. Τα χαρακτηριστικά JSON5 προκαλούν σφάλματα ανάλυσης. Για να εργαστείτε με JSON5, μετατρέψτε πρώτα σε τυπικό JSON χρησιμοποιώντας έναν αναλυτή JSON5.
Το JSON μου έχει μεταφορτωθεί σε διακομιστή;
Όχι. Η ανάλυση και η μορφοποίηση γίνονται εξ ολοκλήρου στο πρόγραμμα περιήγησής σας χρησιμοποιώντας ενσωματωμένες λειτουργίες JSON.
Θα χάσουν την ακρίβεια οι μεγάλοι αριθμοί;
Η JavaScript αντιπροσωπεύει τους αριθμούς ως αιωρούμενους 64-bit, επομένως οι ακέραιοι αριθμοί πάνω από 2^53 (περίπου 9 τετράδισεκα) χάνουν την ακρίβεια. Για αναγνωριστικά ή άλλες μεγάλες ακέραιες τιμές, αποθηκεύστε τις ως συμβολοσειρές στο JSON.
Μπορώ να ταξινομήσω τα πλήκτρα αλφαβητικά;
Το JSON.stringify δεν ταξινομεί τα κλειδιά. Χρησιμοποιήστε ένα ξεχωριστό βήμα ταξινόμησης (ή έναν μορφοποιητή με υποστήριξη ταξινόμησης) για να αλφαβητίσετε τα πλήκτρα πριν από τη συμβολοσειρά.