In questo tutorial imparerai a conoscere JSON e come JavaScript viene utilizzato con JSON con l'aiuto di esempi.
JSON sta per Javascript Object Notation. JSON è un formato di dati basato su testo che viene utilizzato per archiviare e trasferire i dati. Per esempio,
// JSON syntax ( "name": "John", "age": 22, "gender": "male", )
In JSON, i dati sono in coppie chiave / valore separate da una virgola ,
.
JSON è stato derivato da JavaScript. Quindi, la sintassi JSON assomiglia alla sintassi letterale dell'oggetto JavaScript. Tuttavia, è possibile accedere al formato JSON ed essere creato anche da altri linguaggi di programmazione.
Nota : gli oggetti JavaScript e JSON non sono la stessa cosa. Imparerai le loro differenze più avanti in questo tutorial.
Dati JSON
I dati JSON sono costituiti da coppie chiave / valore simili alle proprietà degli oggetti JavaScript. La chiave e i valori sono scritti tra virgolette doppie separate da due punti :
. Per esempio,
// JSON data "name": "John"
Nota : i dati JSON richiedono virgolette doppie per la chiave.
Oggetto JSON
L'oggetto JSON è scritto all'interno di parentesi graffe ( )
. Gli oggetti JSON possono contenere più coppie chiave / valore . Per esempio,
// JSON object ( "name": "John", "age": 22 )
JSON Array
L'array JSON è scritto tra parentesi quadre ( )
. Per esempio,
// JSON array ( "apple", "mango", "banana") // JSON array containing objects ( ( "name": "John", "age": 22 ), ( "name": "Peter", "age": 20 ). ( "name": "Mark", "age": 23 ) )
Nota : i dati JSON possono contenere oggetti e array. Tuttavia, a differenza degli oggetti JavaScript, i dati JSON non possono contenere funzioni come valori.
Accesso ai dati JSON
Puoi accedere ai dati JSON utilizzando la notazione punto. Per esempio,
// JSON object const data = ( "name": "John", "age": 22, "hobby": ( "reading" : true, "gaming" : false, "sport" : "football" ), "class" : ("JavaScript", "HTML", "CSS") ) // accessing JSON object console.log(data.name); // John console.log(data.hobby); // ( gaming: false, reading: true, sport: "football") console.log(data.hobby.sport); // football console.log(data.class(1)); // HTML
Usiamo la .
notazione per accedere ai dati JSON. La sua sintassi è:variableName.key
Puoi anche utilizzare la sintassi delle parentesi quadre ()
per accedere ai dati JSON. Per esempio,
// JSON object const data = ( "name": "John", "age": 22 ) // accessing JSON object console.log(data("name")); // John
Oggetti JavaScript VS JSON
Sebbene la sintassi di JSON sia simile all'oggetto JavaScript, JSON è diverso dagli oggetti JavaScript.
JSON | Oggetto JavaScript |
---|---|
La chiave nella coppia chiave / valore deve essere tra virgolette doppie. | La chiave nella coppia chiave / valore può essere senza virgolette doppie. |
JSON non può contenere funzioni. | Gli oggetti JavaScript possono contenere funzioni. |
JSON può essere creato e utilizzato da altri linguaggi di programmazione. | Gli oggetti JavaScript possono essere utilizzati solo in JavaScript. |
Conversione di JSON in oggetto JavaScript
Puoi convertire i dati JSON in un oggetto JavaScript utilizzando la JSON.parse()
funzione incorporata. Per esempio,
// json object const jsonData = '( "name": "John", "age": 22 )'; // converting to JavaScript object const obj = JSON.parse(jsonData); // accessing the data console.log(obj.name); // John
Conversione di oggetti JavaScript in JSON
È inoltre possibile convertire oggetti JavaScript in formato JSON utilizzando la JSON.stringify()
funzione incorporata JavaScript . Per esempio,
// JavaScript object const jsonData = ( "name": "John", "age": 22 ); // converting to JSON const obj = JSON.stringify(jsonData); // accessing the data console.log(obj); // "("name":"John","age":22)"
Uso di JSON
JSON è il formato più comunemente utilizzato per la trasmissione di dati (scambio di dati) da un server a un client e viceversa. I dati JSON sono molto facili da analizzare e utilizzare. È rapido accedere e manipolare i dati JSON poiché contengono solo testi.
JSON è indipendente dalla lingua. Puoi creare e utilizzare JSON anche in altri linguaggi di programmazione.