JSON (JavaScript Object Notation, JS Object Notation) ist ein leichtes Datenaustauschformat, das häufig von Servern verwendet wird, um Daten an Webseiten zu übergeben . Wie XML ist JSON ein reines textbasiertes Datenformat. Das Dateisuffix einer JSON-Datei ist JSON wird angezeigtVor der Einführung von JSON wurde XML zur Datenübertragung verwendet. Da XML ein reines Textformat ist, eignet es sich für den Datenaustausch über das Internet. XML selbst ist nicht kompliziert, aber angesichts der vielen komplexen Spezifikationen wie DTD, XSD, XPath, XSLT usw. wird sich jeder normale Softwareentwickler überfordert fühlen, wenn er mit XML konfrontiert wird. Am Ende stellt jeder fest, dass er die XML-Spezifikationen möglicherweise nicht versteht, selbst wenn er mehrere Monate intensiv studiert. Schließlich erfand Douglas Crockford eines Tages im Jahr 2002 JSON, ein ultraleichtes Datenaustauschformat, um Softwareentwickler zu retten, die in einer Notlage waren und lange Zeit von mehreren großen Softwareunternehmen hereingelegt worden waren. Da JSON sehr einfach ist, erfreute es sich in der Webwelt schnell großer Beliebtheit und entwickelte sich zu einem ECMA-Standard. Fast alle Programmiersprachen verfügen über Bibliotheken zum Parsen von JSON, und in JavaScript können wir JSON direkt verwenden, da JavaScript über integriertes JSON-Parsing verfügt. JSON-StrukturJson hat zwei grundlegende Strukturen, nämlich Json-Objekt und Json-Array. Durch die Kombination von JSON-Objekten und JSON-Arrays können verschiedene komplexe Strukturen dargestellt werden. JSON-Objekt Die Objektstruktur beginnt mit Der Schlüssel muss vom Typ String sein und in Anführungszeichen eingeschlossen sein. Wert kann ein Datentyp wie Zeichenfolge, Zahl, Objekt, Array usw. sein. Beispielsweise enthält ein Personenobjekt Informationen wie Name, Passwort, Alter usw. und die JSON-Darstellung lautet wie folgt { "pname":"Zhang San", "Passwort":"123456", "Seite":40 } JSON-Objekte werden in geschweiften Klammern gespeichert. Genau wie in JavaScript können Objekte mehrere Schlüssel/Wert-Paare enthalten. JSON-Objekt und JavaScript-ObjektIn JavaScript ist alles ein Objekt, z. B. Zeichenfolgen, Zahlen, Arrays, Daten usw. In JavaScript sind Objekte Daten mit Eigenschaften und Methoden. Das JSON-Objekt, auf das wir uns normalerweise beziehen, ist ein JavaScript-Objekt im JSON-Format oder ein JavaScript-Objekt, das den Anforderungen der JSON-Datenstruktur entspricht.
Konvertieren Sie JSON in JavaScript-ObjekteJSON-Array Die Array-Struktur beginnt mit Die Elementtypen eines JSON-Arrays können inkonsistent sein. Beispielsweise kann „item1“ ein Zeichenfolgentyp, „item2“ ein Zahlentyp und „item3“ ein Objekttyp sein. Auf das letzte Element eines Arrays darf kein Komma folgen. Komplexe Array-TypenHier erstellen wir ein Array mit drei Objekten. Das erste ist ein HTML-Objekt, das ebenfalls ein Array mit 5 Elementen ist. Das zweite ist ein JavaScript-Objekt, das ebenfalls ein Array mit 4 Elementen ist. Das dritte ist das Serverobjekt, das ebenfalls ein Array mit 3 Elementen ist. Komplexe Objekt-Array-KombinationDie beiden oben genannten Typen von (Objekt-, Array-)Datenstrukturen können auch kombiniert werden, um komplexere Datenstrukturen zu bilden. Objekt enthält ArrayHier erstellen wir ein komplexes SiteInfo-Objekt. Der Wert der SiteUrl-Eigenschaft des SiteInfo-Objekts ist www.haicoder.com, der Wert der SiteAddr-Eigenschaft des SiteInfo-Objekts ist Shanghai, der Wert der SitePriority-Eigenschaft des SiteInfo-Objekts ist 1 und die SiteModule-Eigenschaft des SiteInfo-Objekts ist ein Array. Das SiteModule-Array hat zwei Elemente, das erste Element ist HTML und das zweite Element ist JavaScript. Beide Elemente sind ebenfalls vom Typ Array. Array enthält ObjekteGenau wie in JavaScript können Arrays Objekte enthalten: "Mitarbeiter":[ {"Vorname":"John", "Nachname":"Doe"}, {"Vorname":"Anna", "Nachname":"Smith"}, {"Vorname":"Peter", "Nachname":"Jones"} ] Im obigen Beispiel ist das Objekt „Mitarbeiter“ ein Array. Enthält drei Objekte. Jedes Objekt ist ein Mitarbeiterdatensatz (Vor- und Nachname). JSON-Syntaxregeln
Um eine einheitliche Analyse zu gewährleisten, müssen JSON-Zeichenfolgen in doppelte Anführungszeichen JSON-Schlüssel-Wert-PaareDas Schreibformat der JSON-Daten ist: Name/Wert-Paar. Genau wie JavaScript-Objekteigenschaften. Ein Name/Wert-Paar besteht aus dem Feldnamen (in Anführungszeichen eingeschlossen), gefolgt von einem Doppelpunkt und dann dem Wert. Datentyp des JSON-WertesJSON-Werte können folgende Typen haben:
JSON verwendet JavaScript-Syntax, aber das JSON-Format ist nur Text. Douglas ist seit langer Zeit leitender Architekt bei Yahoo und liebt natürlich JavaScript. Das von ihm entworfene JSON ist eigentlich eine Teilmenge der JavaScript-Syntax und eine Zeichenfolgendarstellung von JavaScript-Objekten. Json verwendet Text, um die Informationen eines JavaScript-Objekts darzustellen, bei dem es sich im Wesentlichen um eine Zeichenfolge handelt. Json verwendet JavaScript-Syntax Da Json die JavaScript-Syntax verwendet, ist keine zusätzliche Software erforderlich, um Json in JavaScript zu verarbeiten. Hier erstellen wir ein Objekt-Array durch JavaScript und weisen dem Objekt-Array Werte zu. Zugriff auf Inhalte Daten ändern Ändern Sie die Kategorie des zweiten Elements des Objekts:
JSON- und JavaScript-Objektdurchquerung Sowohl die JSON- String-Traversierung als auch die JavaScript-Objekt -Traversierung verwenden zum Durchlaufen die For-In-Schleife. JSON-Durchquerung Wir erstellen eine haicoder.html-Datei und geben den folgenden Code ein: <!DOCTYPE html> <html lang="de"> <Kopf> <meta charset="UTF-8"> <title>JSON-Durchquerung</title> <Skripttyp="text/javascript"> console.log("haicoder.net (www.haicoder.net)"); var str = {"name": "haicoder", "url": "www.haicoder.net"}; für (var k in str) { console.log(k + " -> " + str[k]); } </Skript> </Kopf> <Text> </body> </html> Zuerst haben wir einen JSON-String str definiert. Als Nächstes verwenden wir eine For-Schleife, um die JSON-Zeichenfolge zu durchlaufen. K ist der Schlüssel in der JSON-Zeichenfolge und str[k] ist der Wert, der dem Schlüssel der JSON-Zeichenfolge entspricht. Öffnen Sie die Datei mit einem Browser. Die Browserausgabe sieht wie folgt aus: JavaScript-Objektdurchquerung Wir erstellen eine haicoder.html-Datei und geben den folgenden Code ein: !DOCTYPE html> <html lang="de"> <Kopf> <meta charset="UTF-8"> <title>JavaScript-Objektdurchquerung</title> <Skripttyp="text/javascript"> console.log("haicoder.net (www.haicoder.net)"); var obj = {name:"haicoder", url:"www.haicoder.net"}; für (var k in obj) { console.log(k + " -> " + obj[k]); } </Skript> </Kopf> <Text> </body> </html> Zuerst definieren wir ein JavaScript-Objekt obj. Als Nächstes verwenden wir eine for-Schleife, um das JavaScript-Objekt zu durchlaufen. k ist der Schlüssel des JavaScript-Objekts und obj[k] ist der Wert, der dem Schlüssel des JavaScript-Objekts entspricht. JSON- und JavaScript-Array-Traversierung Sowohl die JSON-Array-Traversierung als auch die JavaScript-Array-Traversierung verwenden eine For-In-Schleife zum Durchlaufen JSON-Array-Durchquerung Wir erstellen eine haicoder.html-Datei und geben den folgenden Code ein: <!DOCTYPE html> <html lang="de"> <Kopf> <meta charset="UTF-8"> <title>JSON-Array-Durchlauf</title> <Skripttyp="text/javascript"> console.log("haicoder.net (www.haicoder.net)"); var jsonArr = [ {"mod":"json", "url":"www.haicoder.net/json"}, {"mod":"vue", "url":"www.haicoder.net/vue"}, {"mod":"python", "url":"www.haicoder.net/python"} ] für (var k in jsonArr) { Konsole.log(k + " -> " + jsonArr[k].mod + " -> " + jsonArr[k].url); } </Skript> </Kopf> <Text> </body> </html> Zuerst definieren wir ein JSON-Array, jedes Element im Array ist ein Objekt. Als Nächstes verwenden wir eine For-Schleife, um das JSON-Array zu durchlaufen, wobei k der Index des JSON-Arrays ist und jsonArr[k] der Wert ist, der dem Indexschlüssel des JSON-Arrays entspricht. Wir verwenden JavaScript-Objekt-Array-Traversierung var Js_Result = [ { Name: "haicoder", URL: "www.haicoder.net", Alter: 20 }, { Name: "JavaScript", URL: "www.JavaScript.net", Alter: 30 } ] for (var i in Js_Result ){ // i ist der Array-Index console.log(i+" "+Js_Result[i].firstName +" "+Js_Result[i].Nachname +" "+Js_Result[i].age); } //Die Ergebnisausgabe ist 0 haicoder www.haicoder.net 20 1 JavaScript www.JavaScript.net 30 Speichern Sie das JavaScript-Objekt im Array Js_Result. Verwenden Sie eine for-Schleife, um Json_Result zu durchlaufen, wobei i der Array-Index ist, und erhalten Sie den entsprechenden Wert über Js_Result[i].firstName. Serialisierung Die Konvertierung eines beliebigen JavaScript-Objekts in JSON bedeutet die Serialisierung des Objekts in eine Zeichenfolge im JSON-Format, sodass es über das Netzwerk an andere Computer übertragen werden kann. Lassen Sie uns zunächst das Xiaoming-Objekt in eine JSON-Zeichenfolge serialisieren: Um die Ausgabe ansprechender zu gestalten, können Sie Parameter hinzufügen und entsprechend der Einrückung ausgeben:
Ergebnis:
Sie können auch eine Funktion übergeben, sodass jedes Schlüssel-Wert-Paar des Objekts zuerst von der Funktion verarbeitet wird: Funktion konvertieren(Schlüssel, Wert) { wenn (Typ des Wertes === 'Zeichenfolge') { Rückgabewert.toUpperCase(); } Rückgabewert; } JSON.stringify(xiaoming, konvertieren, ' '); Der obige Code konvertiert alle Attributwerte in Großbuchstaben: { "Name": "Xiaoming", "Alter": 14, "Geschlecht": wahr, "Höhe": 1,65, "Note": null, "middle-school": "\"W3C\" MITTELSCHULE", "Fähigkeiten": [ "JAVASCRIPT", "JAVA", "PYTHON", "LISPELN" ] } Wenn wir auch genau steuern möchten, wie Xiaoming serialisiert wird, können wir eine var xiaoming = { Name: 'Xiaoming', Alter: 14, Geschlecht: wahr, Größe: 1,65, Note: null, 'Mittelschule': '\"W3C\" Mittelschule', Fähigkeiten: ['JavaScript', 'Java', 'Python', 'Lisp'], toJSON: Funktion () { return { // Gib nur Name und Alter aus und ändere den Schlüssel: 'Name': dieser.name, „Alter“: dieses.Alter }; } }; JSON.stringify(xiaoming); // '{"Name":"Xiaoming","Alter":14}' Deserialisierung Normalerweise lesen wir JSON-Daten vom Server und zeigen die Daten auf der Webseite an. Nachdem wir einen String im JSON-Format erhalten haben, verwenden wir JSON.parse('[1,2,3,true]'); // [1, 2, 3, wahr] JSON.parse('{"name":"Xiao Ming","age":14}'); // Objekt {name: 'Xiao Ming', age: 14} JSON.parse('true'); // wahr JSON.parse('123.45'); // 123.45
Funktionen von Json
Dies ist das Ende dieses Artikels zum Verständnis von JSON (JavaScript Object Notation) in einem Artikel. Weitere relevante JSON-Inhalte (JavaScript Object Notation) finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
>>: Detaillierte Beschreibung des MySQL-Ersetzens in der Verwendung
Inhaltsverzeichnis 1. Was ist syntaktischer Zucke...
Inhaltsverzeichnis Anwendungsszenarien So erreich...
Dieser Artikel veranschaulicht anhand von Beispie...
Beschränken Sie die Nutzung Wenn wir Abfrageanwei...
Die weltberühmte virtuelle Maschinensoftware VMwa...
Inhaltsverzeichnis 1. MySQL-Platzhalter-Fuzzy-Abf...
Konfigurieren Sie den Beschleuniger für den Docke...
Die Eigenschaft, Text in CSS zu zentrieren, lässt ...
Vorwort Als mein Team das Steuersystemmodul entwi...
Inhaltsverzeichnis 1. Einfacher Datenabruf 2. Dat...
Inhaltsverzeichnis Vorwort Text Parameter Beispie...
Bei der Installation der komprimierten Version vo...
Inhaltsverzeichnis 1. Was ist ein Auslöser? 2. Er...
veranschaulichen Dieser Artikel wurde am 20.05.20...
Inhaltsverzeichnis Überblick Front-End-Wissenssys...