Guida

JSON stringify online: oggetto JavaScript in JSON rigoroso

Incolla un oggetto JavaScript con chiavi senza virgolette, virgolette singole, commenti o una virgola finale e ottieni JSON rigoroso con escape. Questo strumento per stringify JSON online legge il testo con un parser e non lo esegue mai come codice, quindi puoi incollare anche testo preso da una console, da un file di configurazione o da un esempio di codice.


JSON stringify JavaScript: i passaggi

  1. Incolla l’oggetto nella casella Oggetto JavaScript o JSON. Quando incolli, la conversione è immediata. Se scrivi, il risultato si aggiorna circa 300 millisecondi dopo l’ultimo tasto.
  2. In Formato scegli come vuoi il risultato: Minificato (predefinito, su una sola riga), 2 spazi o 4 spazi.
  3. Leggi il risultato sotto JSON rigoroso. Sotto compaiono «Convertito in JSON rigoroso.» e il numero di caratteri.
  4. Premi Copia, subito sotto il risultato. Il pulsante mostra Copiato per un istante.
  5. Premi Cancella per svuotare la casella e ricominciare.

Un piccolo esempio: incolli {name: 'Ana', tags: ['a', 'b',], id: 0xFF}. Con Minificato il risultato è {"name":"Ana","tags":["a","b"],"id":255}.

Quale sintassi JavaScript libera viene accettata

Il testo viene letto con il parser JSON5, che conosce le differenze tra un letterale oggetto di JavaScript e il JSON. Ognuna di queste forme viene convertita invece di essere rifiutata:

Virgolette, barre rovesciate e a capo dentro una stringa vengono sottoposti a escape per te: 'He said "hi"' arriva come "He said \"hi\"". Quello che è già JSON valido passa invariato, a parte il formato che hai scelto.

Minify JSON online o con rientro di 2 o 4 spazi

Il menu Formato si trova sopra il risultato. Minificato scrive tutto su una riga senza spazi, utile per il corpo di una richiesta, per dati di prova o per un valore da incollare dentro una stringa.

2 spazi e 4 spazi danno una versione con rientro, più facile da leggere e da confrontare. Il risultato cambia appena scegli, e Copia prende quello che vedi.

Cosa non viene letto e il messaggio di errore

Vengono accettati solo dati, non codice. Quando il parser si ferma, compare un riquadro rosso intitolato Impossibile leggere questo testo con un motivo chiaro e la posizione, per esempio «Riga 1, colonna 6». Con {a:1 b:2} si ferma sulla b e ti invita a controllare se subito prima manca una virgola, i due punti, una parentesi o delle virgolette. Se il testo finisce mentre una parentesi, una graffa o delle virgolette è ancora aperta, il messaggio è invece «Il testo finisce troppo presto.»

Stringify JSON: numeri, chiavi doppie e altre modifiche

Il risultato viene prodotto dal JSON.stringify del browser stesso, quindi i numeri sono numeri JavaScript. Ecco cosa comporta, da sapere prima di copiare:

Se i dati sono già JSON valido e vuoi solo il rientro senza cambiare nemmeno una cifra, usa il «Formattatore JSON». Per controllare un JSON rispetto a uno schema, usa il «Validatore JSON Schema».

Limiti e privacy


Domande frequenti

Come trasformo un oggetto JavaScript in JSON online?

Incolla l’oggetto nella casella «Oggetto JavaScript o JSON». La conversione è immediata quando incolli, oppure circa 300 millisecondi dopo l’ultimo tasto, e il JSON rigoroso compare sotto «JSON rigoroso». Premi «Copia» per portarlo via. Incolla solo l’oggetto, non una riga come const data = {...};.

Come converto le virgolette singole in doppie in un JSON?

Incolla il testo. Ogni stringa tra virgolette singole esce con virgolette doppie, e una virgoletta doppia al suo interno viene sottoposta a escape, quindi 'He said "hi"' diventa "He said \"hi\"". Vengono toccate solo stringhe e chiavi, per cui un apostrofo dentro una stringa con virgolette doppie resta com’è.

Come tolgo la virgola finale da un JSON?

Incolla il testo. Una virgola dopo l’ultimo elemento di un oggetto o di un array, come in [1, 2,], viene accettata in ingresso e lasciata fuori dal risultato sotto «JSON rigoroso». Nient’altro cambia nei dati.

Un JSON può avere chiavi senza virgolette o commenti?

Il JSON rigoroso no: ogni chiave e ogni stringa richiedono le virgolette doppie, e non esiste una sintassi per i commenti. Gli oggetti JavaScript e i file di configurazione spesso hanno entrambi. Questo strumento li legge, scrive le chiavi tra virgolette doppie e scarta i commenti, così il risultato è JSON valido.

JSON5 in JSON: che differenza c’è tra JSON e JSON5?

JSON5 è un sovrainsieme più libero del JSON che ammette chiavi senza virgolette, stringhe tra virgolette singole, virgole finali, commenti, numeri esadecimali e qualche altra forma in stile JavaScript. Questo strumento legge quella sintassi e scrive JSON semplice, quindi un documento JSON5 senza valori non supportati diventa un JSON che ogni parser accetta.

Come faccio il minify del JSON o il rientro con 2 o 4 spazi?

Usa il menu «Formato» sopra il risultato. «Minificato», l’opzione predefinita, dà una riga senza spazi. 2 spazi e 4 spazi danno una versione con rientro. Il risultato e ciò che prende «Copia» cambiano appena scegli un’altra opzione.

Perché compare «Impossibile leggere questo testo»?

Il testo non è un oggetto, un array o un valore che il parser capisce. Il riquadro rosso indica dove si è fermato, per esempio «Riga 1, colonna 6», e cosa controllare: una virgola, i due punti, una parentesi o delle virgolette che mancano subito prima, oppure una parentesi, una graffa o delle virgolette ancora aperta alla fine. Istruzioni come const x = {...}, un punto e virgola finale, stringhe tra apici inversi, undefined, funzioni e new Date() non sono accettate. Incolla solo l’oggetto.

Il JavaScript che incollo viene eseguito?

No. Il testo viene letto da un parser (JSON5), mai da eval, quindi nulla di ciò che incolli può girare. È anche il motivo per cui il codice viene rifiutato: una funzione, il nome di una variabile o new Date() è un errore, non qualcosa da valutare.

Come faccio l’escape di JSON online con virgolette e a capo?

Non devi fare nulla. Una virgoletta, una barra rovesciata o un a capo dentro una stringa vengono scritti come \", \\ o \n nel risultato. Lo strumento non chiude tutto il JSON in un’unica stringa con escape da incorporare in un’altra stringa: ti dà il JSON stesso.

È lo stesso di JSON.stringify, e quanto può essere lungo il testo?

Il risultato è prodotto con JSON.stringify, quindi le regole di uscita sono le stesse. La differenza sta nell’ingresso: JSON.stringify vuole un oggetto vero nel tuo codice, mentre qui incolli il testo dell’oggetto, sintassi libera compresa. Il limite è 5.000.000 di caratteri. La conversione avviene sul tuo dispositivo e non viene caricato né salvato nulla. Numeri grandi, NaN, Infinity e chiavi doppie cambiano come con JSON.stringify.

Consigliati

Aiuta a mantenere gratuiti gli strumenti. ✨

Le immagini sono solo a scopo illustrativo. In qualità di Affiliato Amazon io ricevo un guadagno dagli acquisti idonei.