Heim  >  Artikel  >  Web-Frontend  >  JS-Methode zum Konvertieren einer Zeichenfolge in ein JSON-Objekt

JS-Methode zum Konvertieren einer Zeichenfolge in ein JSON-Objekt

一个新手
一个新手Original
2017-09-18 10:45:232296Durchsuche

ECMA-262(E3) hat das JSON-Konzept nicht in den Standard geschrieben. Glücklicherweise wurde das Konzept von JSON offiziell in ECMA-262(E5) eingeführt, einschließlich der globales JSON-Objekt und die toJSON-Methode von Date.

1, Bewertungsmethodenanalyse, ich fürchte, dies ist die früheste Analysemethode. Wie folgt:

Der Code lautet wie folgt:

function strToJson(str){ 
var json = eval('(' + str + ')'); 
return json; 
}

Denken Sie daran, die Klammern auf beiden Seiten von str nicht zu vergessen.
2. Die neue Funktionsform ist ziemlich seltsam. Der folgende

-Code lautet wie folgt:

function strToJson(str){ 
var json = (new Function("return " + str))(); 
return json; 
}

3. Verwenden Sie das globale JSON-Objekt wie folgt:

Der Code lautet wie folgt:

function strToJson(str){ 
return JSON.parse(str); 
}

Derzeit hat IE8(S)/Firefox3.5+/Chrome4/Safari4/Opera10 diese Methode implementiert
Die Verwendung von JSON.parse muss strikt der JSON-Spezifikation entsprechen muss wie folgt in Anführungszeichen gesetzt werden

Der Code lautet wie folgt:

var str = '{name:"jack"}'; 
var obj = JSON.parse(str); // --> parse error

Name wird nicht in Anführungszeichen gesetzt. Bei Verwendung von JSON.parse wird eine Ausnahme ausgelöst in allen Browsern und das Parsen schlägt fehl. Die ersten beiden Methoden sind in Ordnung.

Das obige ist der detaillierte Inhalt vonJS-Methode zum Konvertieren einer Zeichenfolge in ein JSON-Objekt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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