Heim > Web-Frontend > js-Tutorial > Detaillierte Erläuterung der Konvertierungsbeispiele zwischen JSON-Objekten und Strings

Detaillierte Erläuterung der Konvertierungsbeispiele zwischen JSON-Objekten und Strings

零下一度
Freigeben: 2018-05-18 11:27:51
Original
2050 Leute haben es durchsucht

Wenn Sie während des Entwicklungsprozesses eine kleine Anzahl von Parametern an das Front- und Backend übertragen möchten, können Sie die Ajax-Datenfunktion direkt verwenden, sie im JSON-Format übergeben und die Hintergrundanforderung verwenden Es müssen mehrere Parameter übergeben werden, daher ist es im Hintergrund schwierig, mehrere Anforderungen zu akzeptieren. Zu diesem Zeitpunkt müssen sie in Form einer Klasse oder Sammlung übergeben werden.

Zum Beispiel: Das Frontend übergibt JSON-Objekte im Klassenformat:

Wenn jsonUserInfo ohne Escape-Symbole geschrieben wird, ist nach der Konvertierung var jsonArrayFinal = JSON.stringify(jsonArray); erforderlich Geben Sie es noch einmal weiter.
var jsonUserInfo = "{\"TUserName\":\"" + userName + "\",\"TInterest\":\"" + interest + "\",\"TSex\":\"" + sex + "\",\"TCity\":\"" + city + "\",\"TDetail\":\"" + detail + "\"}";
Nach dem Login kopieren


Wenn das Frontend mehrere JSON-Arrays im Klassenformat übergibt, also Sammlungstypen:
$.ajax(                    
{                        
type: "post",                        
url: "ReceiveHandler1.ashx",                        
data: { userInfo: jsonUserInfo, flag: "123456", key: "654321" },                        
dataType: "text",                        
success: function(data) {                            
$("#pShow").html(data);                       
 } });
Nach dem Login kopieren

Beispiel:

, it kann nicht übergeben werden. Zu diesem Zeitpunkt müssen Sie JSON.stringify verwenden, um das Array-Objekt in eine Zeichenfolge umzuwandeln, und es dann über AJAX übergeben.
[{"name":"a"},{"name","b"},{"name","c"}]
Nach dem Login kopieren


Zum Beispiel habe ich zwei Variablen, die ich in einen String und b in ein JSON-Objekt konvertieren möchte:

In Firefox, Chrome, Opera, Safari, Erweiterte Browser wie ie9 und ie8 können die Methoden stringify() und parse() des JSON-Objekts direkt verwenden.
var a={"name":"tom","sex":"男","age":"24"}; 
var b='{"name":"Mike","sex":"女","age":"29"}';
Nach dem Login kopieren

JSON.stringify(obj) konvertiert JSON in einen String. JSON.parse(string) konvertiert die Zeichenfolge in das JSON-Format;

Die obige Konvertierung kann wie folgt geschrieben werden:


ie8 (Kompatibilitätsmodus), ie7 und ie6 tun Ich habe kein JSON-Objekt, aber www.json.org/js.html stellt ein json.js bereit, sodass ie8 (Kompatibilitätsmodus), ie7 und ie6 JSON-Objekte und ihre Methoden stringify() und parse() unterstützen können auf github. Dieses js wird von com/douglascrockford/JSON-js bezogen. Im Allgemeinen wird json2.js verwendet.
var a={"name":"tom","sex":"男","age":"24"}; 
var b='{"name":"Mike","sex":"女","age":"29"}';
var aToStr=JSON.stringify(a); 
var bToObj=JSON.parse(b); 
alert(typeof(aToStr));  
//string alert(typeof(bToObj));
//object
JSON.stringify()
Nach dem Login kopieren

ie8 (Kompatibilitätsmodus), ie7 und ie6 können eval() verwenden, um einen String in ein JSON-Objekt zu konvertieren

jQuery verfügt auch über eine Methode zum Konvertieren eines Strings in das JSON-Format jQuery .parseJSON(json), akzeptiert eine JSON-Zeichenfolge im Standardformat und gibt ein analysiertes JavaScript-Objekt (JSON) zurück. Wenn Sie interessiert sind, können Sie natürlich selbst eine jQuery-Erweiterung kapseln. jQuery.stringifyJSON(obj) konvertiert JSON in einen String.
var c='{"name":"Mike","sex":"女","age":"29"}'; 
var cToObj=eval("("+c+")"); 
alert(typeof(cToObj));
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Konvertierungsbeispiele zwischen JSON-Objekten und Strings. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage