string解析为json的几种方式

1.比较古老的方法:

 
  
1 function strToJson(str){
2 var json = eval( ' ( ' + str + ' ) ' );
3 return json;
4 }

2.比较常用的方法:

 
  
1 function strToJson(str){
2 return ( new Function( " return " + str))();
3 }

3.IE67不支持的json对象方法:

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

4.jQuery提供的方法:

 
  
1 parseJSON: function ( data ) {
2 if ( typeof data !== " string " || ! data ) {
3 return null ;
4 }
5 data = jQuery.trim( data );
6 if ( / ^[\],:{}\s]*$ / .test(data.replace( / \\(?:["\\\ / bfnrt] | u[ 0 - 9a - fA - F]{ 4 }) / g, "@")
7   .replace( / "[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)? / g, " ] " )
8 .replace( / (?:^|:|,)(?:\s*\[)+ / g, "" )) ) {
9 return window.JSON && window.JSON.parse ?
10 window.JSON.parse( data ) :
11 ( new Function( " return " + data))();
12
13 } else {
14 jQuery.error( " Invalid JSON: " + data );
15 }
16 },

转载于:https://www.cnblogs.com/jxin/archive/2010/11/10/1873753.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值