Heim >Web-Frontend >js-Tutorial >Vergleichende Analyse der Vor- und Nachteile von JSON und XML_json
1. Einführung in die Definition
1.1 XML-Definition
Extensible Markup Language (XML), eine Auszeichnungssprache, die zum Markieren elektronischer Dokumente verwendet wird, um sie strukturell zu gestalten. Es ist eine Auszeichnungssprache, die es Benutzern ermöglicht, ihre eigene Quellsprache zu definieren . XML verwendet die Dokumenttypdefinition DTD (Document Type Definition), um Daten zu organisieren. Das Format ist einheitlich, plattform- und sprachübergreifend und hat sich in der Branche längst zu einem anerkannten Standard entwickelt.
XML ist eine Teilmenge der Standard Generalized Markup Language (SGML) und eignet sich gut für den Webtransport. XML bietet eine einheitliche Methode zum Beschreiben und Austauschen strukturierter Daten unabhängig von Anwendungen oder Anbietern.
1.2 JSON-Definition
JSON (JavaScript Object Notation) ist ein leichtes Datenaustauschformat, das leicht zu lesen und schnell zu schreiben ist. Der Datenaustausch zwischen verschiedenen Plattformen ist möglich. JSON verwendet ein hochkompatibles und vollständig sprachunabhängiges Textformat und weist außerdem ein ähnliches Verhalten wie die Sprachgewohnheiten von C auf (einschließlich C, C, C#, Java, JavaScript, Perl, Python usw.). Diese Eigenschaften machen JSON zu einer idealen Datenaustauschsprache.
JSON basiert auf der Programmiersprache JavaScript, einer Teilmenge des Standards ECMA-262, 3. Ausgabe – Dezember 1999.
2. Vor- und Nachteile von XML und JSON
2.1 Vor- und Nachteile von XML
Vorteile von XML
A. Das Format ist einheitlich und entspricht den Standards
B. Es ist einfacher, aus der Ferne mit anderen Systemen zu interagieren, und der Datenaustausch ist bequemer.
A.XML-Dateien sind riesig, das Dateiformat ist komplex und die Übertragung verbraucht Bandbreite
B. Sowohl der Server als auch der Client müssen viel Code zum Parsen von XML aufwenden, was dazu führt, dass der Server- und Client-Code äußerst komplex und schwer zu warten ist
C. Die Art und Weise, XML zwischen verschiedenen Browsern auf der Clientseite zu analysieren, ist inkonsistent und es muss viel Code wiederholt geschrieben werden
D. Der Server und der Client wenden mehr Ressourcen und Zeit für das Parsen von XML auf.
2.2 Vor- und Nachteile von JSON
E. Da das JSON-Format direkt vom serverseitigen Code verwendet werden kann, vereinfacht es die Codeentwicklung auf der Server- und Clientseite erheblich, und die Aufgabe bleibt unverändert und ist leicht zu warten.
Nachteile von JSON
In Bezug auf die Lesbarkeit.
Die Datenlesbarkeit von JSON und XML ist im Wesentlichen gleich. Einerseits ist die empfohlene Syntax und andererseits ist XML besser lesbar.
In Bezug auf die Skalierbarkeit.
XML ist von Natur aus sehr skalierbar, und JSON hat es sicherlich auch. Es gibt nichts, was XML erweitern kann, was JSON nicht kann.
In Bezug auf die Codierungsschwierigkeit.
XML verfügt über zahlreiche Codierungstools wie Dom4j, JDom usw., und JSON verfügt auch über Tools, die von json.org bereitgestellt werden. Allerdings ist die JSON-Codierung offensichtlich viel einfacher als XML. Sie können JSON-Code auch ohne verwenden Tools, aber Sie müssen gutes XML schreiben, ist nicht einfach.
Dekodierungsschwierigkeiten.
Beim Parsen von XML müssen untergeordnete und übergeordnete Knoten berücksichtigt werden, was den Leuten schwindelig macht, während die Schwierigkeit beim Parsen von JSON fast 0 ist. XML verliert an dieser Stelle wirklich nichts.
Beliebtheit.
XML ist in der Branche weit verbreitet, während JSON gerade erst begonnen hat. Im spezifischen Bereich von Ajax muss die zukünftige Entwicklung jedoch darin bestehen, dass XML JSON weichen wird. Bis dahin sollte Ajax zu Ajaj (Asynchronous Javascript und JSON) werden.
In Bezug auf analytische Methoden.
JSON und XML verfügen ebenfalls über umfangreiche Parsing-Methoden.
In Bezug auf das Datenvolumen.
Im Vergleich zu XML hat JSON eine geringere Datengröße und eine schnellere Übertragungsgeschwindigkeit.
Dateninteraktion.
Die Interaktion zwischen JSON und JavaScript ist bequemer, einfacher zu analysieren und zu verarbeiten und sorgt für eine bessere Dateninteraktion.
Datenbeschreibung.
JSON beschreibt Daten weniger als XML.
Übertragungsgeschwindigkeit.
JSON ist viel schneller als XML.
4.1 Über Leichtgewicht und Schwergewicht
Leichtgewicht und Schwergewicht sind relative Begriffe. Wo liegt also das Schwergewicht von XML im Vergleich zu JSON? Es sollte sich in der Analyse widerspiegeln, die XML derzeit mit zwei Parsing-Methoden entwickelt.
DOM
DOM betrachtet ein Datenaustauschformat XML als DOM-Objekt und die gesamte XML-Datei muss in den Speicher eingelesen werden. Die Prinzipien von JSON und XML sind in dieser Hinsicht gleich, XML muss jedoch übergeordnete und untergeordnete Knoten berücksichtigen . JSON ist viel weniger schwierig zu analysieren, da JSON auf zwei Strukturen basiert: Schlüssel/Wert, eine geordnete Sammlung von Werten, die als Array verstanden werden kann;
SAX
Daher ist der leichte/schwere Unterschied zwischen JSON und XML:
JSON bietet nur eine umfassende Parsing-Lösung und diese Methode kann nur dann gute Ergebnisse erzielen, wenn weniger Daten analysiert werden
XML bietet eine schrittweise Analyselösung für große Datenmengen, die sich sehr gut für die Verarbeitung großer Datenmengen eignet.
In Bezug auf die Codierung.
Obwohl XML und JSON über eigene Codierungstools verfügen, ist die JSON-Codierung einfacher als XML. Sie können JSON-Code auch ohne die Hilfe von Tools schreiben, aber es ist etwas schwierig, guten XML-Code zu schreiben ist ebenfalls textbasiert, verwendet alle die Unicode-Kodierung und weist dieselben Eigenschaften auf wie das Datenaustauschformat XML
Lesbarkeit.
Subjektiv gesehen ist JSON klarer und weniger redundant. Die JSON-Website bietet eine strenge, wenn auch kurze Beschreibung der JSON-Syntax. Im Allgemeinen eignet sich XML besser zum Markieren von Dokumenten, während JSON besser für die Datenaustauschverarbeitung geeignet ist.
In Bezug auf das Parsen.
Im Bereich gewöhnlicher Webanwendungen haben Entwickler häufig Probleme mit der XML-Analyse, unabhängig davon, ob sie XML auf der Serverseite generiert oder verarbeitet oder XML auf der Clientseite mithilfe von JavaScript analysiert. Dies führt häufig zu komplexem Code und einer extrem geringen Entwicklung Effizienz.
Beispielvergleich
Sowohl XML als auch JSON verwenden strukturierte Methoden zum Markieren von Daten. Lassen Sie uns unten einen einfachen Vergleich anstellen.
<?xml version="1.0" encoding="utf-8" ?> <country> <name>中国</name> <province> <name>黑龙江</name> <citys> <city>哈尔滨</city> <city>大庆</city> </citys> </province> <province> <name>广东</name> <citys> <city>广州</city> <city>深圳</city> <city>珠海</city> </citys> </province> <province> <name>台湾</name> <citys> <city>台北</city> <city>高雄</city> </citys> </province> <province> <name>新疆</name> <citys> <city>乌鲁木齐</city> </citys> </province> </country>Verwenden Sie JSON, um die Daten einiger Provinzen und Städte in China wie folgt darzustellen:
var country = { name: "中国", provinces: [ { name: "黑龙江", citys: { city: ["哈尔滨", "大庆"]} }, { name: "广东", citys: { city: ["广州", "深圳", "珠海"]} }, { name: "台湾", citys: { city: ["台北", "高雄"]} }, { name: "新疆", citys: { city: ["乌鲁木齐"]} } ] }In Bezug auf die Lesbarkeit der Codierung hat XML offensichtliche Vorteile. Schließlich kommt die menschliche Sprache einer solchen Beschreibungsstruktur näher. JSON liest sich eher wie ein Datenblock und ist verwirrender zu lesen. Die für uns schwer lesbare Sprache ist jedoch für maschinelles Lesen geeignet, sodass der Wert „Heilongjiang“ über den JSON-Index „country.provinces[0].name“ gelesen werden kann.
In Bezug auf die handschriftliche Schwierigkeit beim Codieren ist XML einfacher zu lesen und natürlich auch leicht zu schreiben. Allerdings sind die geschriebenen JSON-Zeichen offensichtlich deutlich geringer. Wenn Sie die leeren Tabulatoren und Zeilenumbrüche entfernen, ist JSON dicht mit nützlichen Daten gefüllt, während XML viele sich wiederholende Markup-Zeichen enthält.
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er gefällt Ihnen allen.