jquery JSON的解析方式示例介绍


Posted in Javascript onJuly 27, 2014

这里考虑都考虑的是服务器返回的是JSON形式的字符串的形式,对于利用JSONObject等插件封装的JSON对象,与此亦是大同小异,这里不再做说明。

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

var data=" 
{ 
root: 
[ 
{name:'1',value:'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异步请求没做类型说明,或者以字符串方式接受,那么需要做一次对象化处理,方式不是太麻烦,就是将该字符串放于eval()中执行一次。这种方式也适合以普通javascipt方式获取json对象,以下举例说明:

var dataObj=eval("("+data+")");//转换为json对象 
alert(dataObj.root.length);//输出root的子对象数量 
$.each(dataObj.root,fucntion(idx,item){ 
if(idx==0){ 
return true; 
} 

//输出每个root子对象的名称和值 
alert("name:"+item.name+",value:"+item.value); 
})

注:对于一般的js生成json对象,只需要将$.each()方法替换为for语句即可,其他不变。

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

$.getJSON("http://gaoyusi.blog.163.com/",{param:"gaoyusi"},function(data){

//此处返回的data已经是json对象 
//以下其他操作同第一种情况 
$.each(data.root,function(idx,item){ 
if(idx==0){ 
return true;//同countinue,返回false同break 
} 

alert("name:"+item.name+",value:"+item.value); 

}); 
});
Javascript 相关文章推荐
js查找父节点的简单方法
Jun 28 Javascript
javascript中方便增删改cookie的一个类
Oct 11 Javascript
js实时获取系统当前时间实例代码
Jun 28 Javascript
fmt:formatDate的输出格式详解
Jan 09 Javascript
js实现简易的单数字随机抽奖(0-9)
Mar 19 Javascript
JS获取元素多层嵌套思路详解
May 16 Javascript
深入浅析JavaScript函数前面的加号和叹号
Jul 09 Javascript
无限循环轮播图之运动框架(原生JS实现)
Oct 01 Javascript
swiper.js插件实现pc端文本上下滑动功能示例
Dec 03 Javascript
vue图片上传本地预览组件使用详解
Feb 20 Javascript
解决echarts vue数据更新,视图不更新问题(echarts嵌在vue弹框中)
Jul 20 Javascript
Vue实现多页签组件
Jan 14 Vue.js
jQuery提交多个表单的小技巧
Jul 27 #Javascript
用javascript对一个json数组深度赋值示例
Jul 27 #Javascript
在JS数组特定索引处指定位置插入元素
Jul 27 #Javascript
多个$(document).ready()的执行顺序实例分析
Jul 26 #Javascript
jquery 取子节点及当前节点属性值
Jul 25 #Javascript
jquery text()方法取标签中的文本
Jul 25 #Javascript
jquery根据属性和index来查找属性值并操作
Jul 25 #Javascript
You might like
法兰绒滤网冲泡
2021/03/03 冲泡冲煮
php使用cookie实现记住登录状态
2015/04/27 PHP
使用Huagepage和PGO来提升PHP7的执行性能
2015/11/30 PHP
php pdo连接数据库操作示例
2019/11/18 PHP
Extjs4 关于Store的一些操作(加载/回调/添加)
2013/04/18 Javascript
基于jQuery实现的文字按钮表单特效整理
2014/12/07 Javascript
JavaScript脚本库编写的方法
2015/12/09 Javascript
js操作cookie保存浏览记录的方法
2015/12/25 Javascript
jQuery页面元素动态添加后绑定事件丢失方法,非 live
2016/06/16 Javascript
浅谈js对象的创建和对6种继承模式的理解和遐想
2016/10/16 Javascript
微信小程序 MINA文件结构
2016/10/17 Javascript
微信小程序 wxapp地图 map详解
2016/10/31 Javascript
深入理解js中的加载事件
2017/02/08 Javascript
vue2.0多条件搜索组件使用详解
2020/03/26 Javascript
基于twbsPagination.js分页插件使用心得(分享)
2017/10/21 Javascript
vue 中的keep-alive实例代码
2018/07/20 Javascript
解决vue中修改了数据但视图无法更新的情况
2018/08/27 Javascript
详解小程序不同页面之间通讯的解决方案
2018/11/23 Javascript
python 域名分析工具实现代码
2009/07/15 Python
Python获取央视节目单的实现代码
2015/07/25 Python
Python文件处理
2016/02/29 Python
Python创建xml文件示例
2017/03/22 Python
深入理解Django的自定义过滤器
2017/10/17 Python
python使用turtle库绘制树
2018/06/25 Python
Python基于递归算法求最小公倍数和最大公约数示例
2018/07/27 Python
详解python中list的使用
2019/03/15 Python
python基于TCP实现的文件下载器功能案例
2019/12/10 Python
PyQt5 文本输入框自动补全QLineEdit的实现示例
2020/05/13 Python
使用python编写一个语音朗读闹钟功能的示例代码
2020/07/14 Python
《金钱的魔力》教学反思
2014/02/24 职场文书
中学生家长评语大全
2014/04/16 职场文书
房地产资料员岗位职责
2014/07/02 职场文书
培训心得体会怎么写
2016/01/25 职场文书
Go gRPC进阶教程gRPC转换HTTP
2022/06/16 Golang
Windows server 2012 NTP时间同步的实现
2022/06/25 Servers
Docker部署Mysql8的实现步骤
2022/07/07 Servers