jquery 转换为json-如何用jquery解析JSON数据以及字符串转json的3种方法

2023-09-17 0 6,848 百度已收录

使用jquery解析JSON数据,作为jquery异步请求的传输对象。 jquery请求后返回的结果是一个json对象。 这里考虑的是服务器返回JSON格式字符串的方式。 对于 JSONObject 等插件封装的 JSON 对象,这也是和金城的一个小区别,这里不再解释。

这里,首先给出JSON字符串集。 字符串集如下:

代码如下所示:

变量数据=“

根:

{名称:'1',值:'0'},

{name:'6101',value:'广州市'},

{name:'6102',value:'上海'},

{name:'6103',value:'北京'},

{name:'6104',value:'上海'},

{name:'6105',value:'新乡市'},

{name:'6106',value:'汉中市'},

{name:'6107',value:'西安市'},

{name:'6108',value:'大同市'},

{name:'6109',value:'商洛市'},

{name:'6110',value:'西安'}

}";

根据jquery异步获取的数据类型——json对象和字符串,这里介绍两种形式获取的结果处理方法。

1、对于服务器返回的JSON字符串jquery 转换为json,如果jquery异步请求没有类型描述,或者是以字符串形式接收的,则需要进行对象化处理。 方法也不算太麻烦,就是把字符串放在 eval() 中执行一次。 这些方法也适合使用普通的javascipt方法获取json对象。 下面的例子说明:

vardataObj=eval("("+data+")");//转换为json对象

alert(dataObj.root.length);//输出root的子对象数量

$.each(dataObj.root,fucntion(idx,item){

如果(idx==0){

返回真;

//输出每个根子对象的名称和值

Alert("名称:"+item.name+",值:"+item.value);

})

注意:普通js生成json对象只需要把$.each()方法换成for语句即可jquery 转换为json,其他不变。

2、对于服务器返回的JSON字符串,如果jquery异步请求将type(通常是这个配置属性)设置为“json”,或者使用$.getJSON()方法获取服务器返回,则eval()不需要方法。 ,因为此时得到的结果已经是一个json对象,所以只需要直接调用该对象即可。 这里以$.getJSON方法为例来说明数据处理方法:

$.getJSON("http://www.phpzixue.cn/",{param:"gaoyusi"},function(data){

//这里返回的数据已经是一个json对象

//以下其他操作与第一种情况相同

$.each(data.root,函数(idx,item){

如果(idx==0){

returntrue;//与countinue相同,返回false与break相同

Alert("名称:"+item.name+",值:"+item.value);

});

});

这里非常需要注意的是,模式1中的eval()方法是动态执行字符串(可能是js脚本),这样很容易导致系统安全问题。 因此,您可以使用一些绕过 eval() 的第三方客户端脚本库。 例如JSONinJavaScript提供了不超过3k的脚本库。

本文来自:IT知道网()详细源码参考:

=================字符串转json的三种形式========================

第一:eval方法分析

Js代码

functionstrToJson(str){varjson=eval('('+str+')');returnjson;}

第二种:newFunction方法

Js代码

functionstrToJson(str){varjson=(newFunction("return"+str))();returnjson;}

第三种方式:使用全局JSON对象

Js代码

functionstrToJson(str){returnJSON.parse(str);}

另外:使用JSON.parse时,必须严格遵循JSON规范。 例如,属性必须由冒号组成,如下

Js代码

varstr='{name:"jack"}';varobj=JSON.parse(str);//-->parseerror

该名称不由冒号组成。 使用JSON.parse时,所有浏览器都会抛出异常,解析失败。 前两种方法都很好。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 jquery jquery 转换为json-如何用jquery解析JSON数据以及字符串转json的3种方法 https://www.wkzy.net/game/196747.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务