关于ajax中获取到的数据格式不是标准的json的

时间:2021-04-03 18:57:03

   

  • 对于标准json格式的数据,是长这个样子的,用单引号括起来,其中的字符串使用双引号给括起来,如下所示   
1 var obj='{"name":"小红","age":"18"}';

 

  • 标准的json格式的数据可以使用JSON.parse()方法来将字符串转成对象,但是有时候我们从后端获取到的数据并不是标准的json格式的数据,这时候使用JSON.parse()就会出错,因此,我们需要考虑使用其他方法来把字符串转成对象,如下
1 var arr="{'name':'小红','age':'18'}"  //不标准的json格式数据

  方法一:使用eval()方法,缺点是性能不好,需要内部处理两次才能把数据转换出来。

1 var j=eval('('+arr+')'); 

  方法二:使用new Function()方法。具体使用如下

1 var j=new Function('','return'+arr)( )