JSON stringify è un metodo che serve a convertire un oggetto o un valore JavaScript in una stringa JSON.

Abbiamo già detto che il formato JSON è utilizzato per lo scambio di informazioni da o verso un server web.

Nella lezione precedente abbiamo visto il funzionamento del metodo JSON.parse per fare esattamente l’opposto di quanto vedremo in questa lezione. Questo metodo serve infatti a prendere un dato da un server web e renderlo utilizzabile lato JavaScript.

In questa lezione studieremo invece come inviare dati ad un server web, ad esempio convertendo un oggetto esistente. Per ottenere questo servirà il metodo JSON.stringify.

Sintassi di JSON stringify

La sintassi di questo metodo è la seguente:

JSON.stringify(valore[,replacer[,space]]);

Banner Pubblicitario

Dove valore rappresenta l’oggetto da convertire in stringa, mentre replacer è un parametro opzionale che rappresenta una funzione oppure un array che consente di modificare le proprietà dell’oggetto da convertire.

Infine space è utilizzato per inserire ad esempio uno spazio bianco nella stringa JSON e dunque rendere l’output più leggibile.

Esempio di JSON stringify

Prendiamo come esempio l’oggetto JavaScript automobile e lo visualizziamo attraverso il console.log.

var automobile = {
    marca: 'Fiat',
    modello: '500',
    colore: 'bianco',
    alimentazione: 'benzina',
    anno: 2010,
    cavalli: 69
};
console.log(automobile);

Richiamiamo poi il metodo stringify sull’oggetto creato.

var stringaJson = JSON.stringify(automobile);
console.log(stringaJson);

In questo modo abbiamo ottenuto una conversione dell’oggetto a stringa, come possiamo vedere nella nostra console:

convertire in stringa json

Esempio con i parametri opzionali di JSON stringify

Così come abbiamo visto nell’esempio presentato nella scorsa lezione, nel quale aggiungevamo all’oggetto degli elementi attraverso una funzione, anche nel nostro caso possiamo modificare il nostro oggetto prima di convertirlo in stringa.

Dunque di seguito il codice:

Banner pubblicitario
var elementi = {
  A : "Coding",
  B: "Creativo"
};

var oggettoElemento = JSON.stringify(elementi, function (key, value) {
      if(key == "A")
          return "Coding Creativo";
      return value;
  });

  console.log(oggettoElemento);

Infine per creare lo spazio e aumentare la leggibilità della stringa JSON, aggiungiamo uno spazio vuoto. Dunque basta scrivere in questo modo:

var oggettoElemento = JSON.stringify(elementi, function (key, value) {
      if(key == "A")
          return "Coding Creativo";
      return value;
  }, ' ');

Ecco in figura l’output prodotto:

stringify json

In questa lezione abbiamo visto il metodo JSON stringify, nelle prossime vedremo altri esempi.

Alcuni link utili

Indice tutorial JavaScript

Le funzioni di callback

Esempi funzioni di callback

Come utilizzare le callback e setTimeout

Cifrario di Cesare online

Come realizzare un convertitore da decimale a binario, ottale ed esadecimale

Come creare PDF con JavaScript

PDF da un form con JavaScript