Heim >Web-Frontend >js-Tutorial >Analysieren und konvertieren Sie zwischen JSON-Objekten und Strings
In diesem Artikel wird hauptsächlich die Konvertierung zwischen JSON-Objekten und Zeichenfolgen ausführlich vorgestellt. Ich hoffe, dass er im Entwicklungsprozess hilfreich ist Um eine kleine Anzahl von Parametern nach vorne und hinten zu übertragen, können Sie die Ajax-Datenfunktion direkt verwenden, sie im JSON-Format übergeben und die Hintergrundanforderung verwenden. Manchmal müssen Sie jedoch mehrere Parameter übergeben, sodass der Hintergrund
akzeptiert Es ist mühsam, mehrere Anfragen anzufordern. Zu diesem Zeitpunkt müssen sie in Form einer Klasse oder einer Sammlung übergeben werden.
Zum Beispiel: Das Frontend übergibt JSON-Objekte im Klassenformat:
var jsonUserInfo = "{"TUserName":"" + userName + "","TInterest":"" + Interesse + „“, „TSex“: „+ Geschlecht + „“, „TCity“: „+ Stadt + „“, „TDetail“: „+ Detail + „“}“;
wie z. B. Die ausgeschriebene jsonUserInfo hat keine Escape-Symbole und muss vor der Übergabe durch var jsonArrayFinal = JSON.stringify(jsonArray); konvertiert werden.
Kopieren Sie den Code wie folgt:
URL: "ReceiveHandler1.ashx" ,
Daten: { userInfo: jsonUserInfo, flag: "123456", key: "654321" },
dataType: "text",
Success: function(data) {
pShow").html(data);
übergeben und muss verwendet werden. Verwenden Sie JSON.stringify, um das Array-Objekt in eine Zeichenfolge zu konvertieren, und übergeben Sie es dann über AJAX.
Zum Beispiel habe ich zwei Variablen, die ich in einen String und b in ein JSON-Objekt umwandeln möchte:
var a={"name":"tom","sex" :„männlich“, „Alter“: „24“};
var b='{“name“: „Mike“, „Geschlecht“: „weiblich“, „Alter“: „29“}‘; >
In erweiterten Browsern wie Firefox, Chrome, Opera, Safari, ie9, ie8 usw. können Sie die Methoden stringify() und parse() des JSON-Objekts direkt verwenden.
JSON.stringify(obj) konvertiert JSON in einen String. JSON.parse(string) konvertiert die Zeichenfolge in das JSON-Format;
var a={"name":"tom", "sex": "male" , „Alter“: „24“}; JSON .stringify(a);
var bToObj=JSON.parse(b);alert(typeof(aToStr)); //string
alert(typeof(bToObj)); >JSON.stringify()
ie8 (Kompatibilitätsmodus), ie7 und ie6 haben keine JSON-Objekte, aber
http://www.json.org/js.html
var cToObj=eval("("+c+")");
alert(typeof(cToObj));
jQuery verfügt außerdem über eine Methode zum Konvertieren von Zeichenfolgen in das JSON-Format, jQuery.parseJSON(json), die eine JSON-Zeichenfolge in einem Standardformat akzeptiert und ein analysiertes JavaScript-Objekt (JSON) zurückgibt. Wenn Sie interessiert sind, können Sie natürlich selbst eine jQuery-Erweiterung kapseln. jQuery.stringifyJSON(obj) konvertiert JSON in einen String.
Weitere Artikel zum Parsen und Konvertieren von JSON-Objekten und -Strings finden Sie auf der chinesischen PHP-Website!