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 相关文章推荐
Javascript 布尔型分析
Dec 22 Javascript
JavaScript 学习笔记 Black.Caffeine 09.11.28
Nov 30 Javascript
document.createElement()用法及注意事项(ff下不兼容)
Mar 13 Javascript
jquery 获取标签名(tagName)示例代码
Jul 11 Javascript
二叉树的非递归后序遍历算法实例详解
Feb 07 Javascript
使用CSS样式position:fixed水平滚动的方法
Feb 19 Javascript
用javascript关闭本窗口技巧小结
Sep 05 Javascript
jQuery中:checkbox选择器用法实例
Jan 03 Javascript
详解如何让Express支持async/await
Oct 09 Javascript
详解封装基础的angular4的request请求方法
Jun 05 Javascript
Bootstrap模态对话框中显示动态内容的方法
Aug 10 Javascript
微信小程序如何获取手机验证码
Nov 04 Javascript
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
Apache中php.ini的设置方法
2013/02/28 PHP
PHP5多态性与动态绑定介绍
2015/04/03 PHP
迪菲-赫尔曼密钥交换(Diffie?Hellman)算法原理和PHP实现版
2015/05/12 PHP
jQuery 使用手册(三)
2009/09/23 Javascript
jQuery.Validate 使用笔记(jQuery Validation范例 )
2010/06/25 Javascript
基于JQuery的Select选择框的华丽变身
2011/08/23 Javascript
jQuery+JSON+jPlayer实现QQ空间音乐查询功能示例
2013/06/17 Javascript
javascript处理表单示例(javascript提交表单)
2014/04/28 Javascript
jQuery图片切换插件jquery.cycle.js使用示例
2014/06/16 Javascript
Jquery跨浏览器文本复制插件Zero Clipboard的使用方法
2016/02/28 Javascript
Yarn的安装与使用详细介绍
2016/10/25 Javascript
AngularJS用户选择器指令实例分析
2016/11/04 Javascript
vue实现单选和多选功能
2017/08/11 Javascript
Vue框架之goods组件开发详解
2018/01/25 Javascript
如何用webpack4带你实现一个vue的打包的项目
2018/06/20 Javascript
微信小程序实现指定显示行数多余文字去掉用省略号代替
2018/07/25 Javascript
Vue路由history模式解决404问题的几种方法
2018/09/29 Javascript
利用原生JavaScript实现造日历轮子实例代码
2019/05/08 Javascript
element-ui table行点击获取行索引(index)并利用索引更换行顺序
2020/02/27 Javascript
js中火星坐标、百度坐标、WGS84坐标转换实现方法示例
2020/03/02 Javascript
二种python发送邮件实例讲解(python发邮件附件可以使用email模块实现)
2013/12/03 Python
在Python中操作文件之truncate()方法的使用教程
2015/05/25 Python
Pycharm在创建py文件时,自动添加文件头注释的实例
2018/05/07 Python
python实现归并排序算法
2018/11/22 Python
提升Python程序性能的7个习惯
2019/04/14 Python
Falsk 与 Django 过滤器的使用与区别详解
2019/06/04 Python
python list多级排序知识点总结
2019/10/23 Python
Python递归求出列表(包括列表中的子列表)的最大值实例
2020/02/27 Python
详解Django中views数据查询使用locals()函数进行优化
2020/08/24 Python
宝宝满月酒主持词和仪式流程
2014/03/27 职场文书
《真想变成大大的荷叶》教学反思
2014/04/14 职场文书
奥运会口号
2014/06/13 职场文书
大学活动总结模板
2014/07/10 职场文书
农村党员学习党的群众路线教育实践活动心得体会
2014/11/04 职场文书
教师求职简历自我评价
2015/03/10 职场文书
学习计划是什么
2019/04/30 职场文书