Heim > Web-Frontend > js-Tutorial > js中将字符串转换成json的三种方式

js中将字符串转换成json的三种方式

PHPz
Freigeben: 2018-10-11 14:55:01
Original
1175 Leute haben es durchsucht

使用ajax的开发项目过程中,经常需要将json格式的字符串返回到前端,前端解析成js对象(JSON )。

ECMA-262(E3) 中没有将JSON概念写到标准中,还好在ECMA-262(E5)中JSON的概念被正式引入了,包括全局的JSON对象和Date的toJSON方法。

1,eval方式解析,恐怕这是最早的解析方式了。如下:

代码如下:

function strToJson(str){ 
var json = eval('(' + str + ')'); 
return json; 
}
Nach dem Login kopieren

记得别忘了str两旁的小括号。

2,new Function形式,比较怪异哦。如下

代码如下:

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

3,使用全局的JSON对象,如下:

代码如下:

function strToJson(str){ 
return JSON.parse(str); 
}
Nach dem Login kopieren

使用JSON.parse需严格遵守JSON规范,如属性都需用引号引起来,如下

代码如下:

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

name没有用引号引起来,使用JSON.parse所有浏览器中均抛异常,解析失败。而前两种方式则没问题。
另见:Chrome中JSON.parse的特殊实现

更多相关教程请访问 JavaScript视频教程

 

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