json定义及jquery操作json的方法


Posted in Javascript onSeptember 29, 2016

一、背景

json是一种轻量级数据交换格式,非常利于java服务与js的交互,本文将介绍json的简单定义和js如何解析json。

二、内容

1、json定义:

简单的json格式为[{"key1":"value1"},{"key2":"value2"}],

[]代表数组,{}代表数组中的数据对象,key1,key2是一个json对象中的key,一个json中key值唯一,value1,value2,是key键对应的值。

定义方式:

1)直接拼写json串,例:String变量,内容为[{"attchName":"附件0","attchId":0},{"attchName":"附件1","attchId":1},{"attchName":"附件2","attchId":2}]。

2)引入json-lib.jar开源jar包,定义JSONObject对象,例:

JSONArray jsonArray = newJSONArray();
JSONObject attchJson = newJSONObject();
attchJson.put("attchId","0");
attchJson.put("attchName", "附件0");
jsonArray.put(attchJson);

jsonArray即为一个json数据,等价于用[]的定义一个json.

复杂json定义,json中key对应的值也可以是一个json数组,如,json中封装一个任务信息,这个任务中有若干附件定义方法如下:

JSONArray taskJsonArray = newJSONArray();
JSONObject taskJsonObj = newJSONObject();
taskJsonObj.put("taskId",100);
taskJsonObj.put("taskName", "myTask");
taskJsonObj.put("attchs",jsonArray);
taskJsonArray.put(jsonObj);

taskJsonArray为最后想要得到的json内容,

简单拼串后的形式如下:

[{"attchs":[{"attchName":"附件0","attchId":0},{"attchName":"附件1","attchId":1},{"attchName":"附件2","attchId":2}],"taskId":100,"taskName":"myTask"}]

2、js解析json

json的一般解析方式:

var json = eval_r(jsonArray );
 for(var i=0;i<json.length;i++){ 
 alert("attchId:"+json[i].attchId+",attchName:"+json[i].attchName);
}

使用jquery解析json:

$.getJSON("jsonTest",{showNumber:"3"},function(data){  
  $.each(data,function(idx,item){
   //alert(idx);
   if(idx<0){
   returntrue;//同countinue,返回false同break
   } 
   alert("attchId:"+item.attchId+",taskName:"+item.attchName); 
  });
 });

三、总结

json格式简单,便于解析和生成,而且是一个轻量级数据交换格式,便于在web开发中使用。

以上就是小编为大家带来的json定义及jquery操作json的方法的全部内容了,希望对大家有所帮助,多多支持三水点靠木~

Javascript 相关文章推荐
IE php关于强制下载文件的代码
Aug 23 Javascript
XMLHTTPRequest的属性和方法简介
Nov 23 Javascript
14个有用的Jquery技巧分享
Jan 08 Javascript
javascript动态修改Li节点值的方法
Jan 20 Javascript
基于HTML5上使用iScroll实现下拉刷新,上拉加载更多
May 21 Javascript
微信小程序 开发经验整理
Feb 15 Javascript
element-ui table span-method(行合并)的实现代码
Dec 20 Javascript
vue指令做滚动加载和监听等
May 26 Javascript
深入理解 TypeScript Reflect Metadata
Dec 12 Javascript
vue 组件简介
Jul 31 Javascript
浅谈JavaScript 声明提升
Sep 14 Javascript
详解Vue中的watch和computed
Nov 09 Javascript
JavaScript中apply方法的应用技巧小结
Sep 29 #Javascript
老生常谈javascript变量的命名规范和注释
Sep 29 #Javascript
浅谈javascript:两种注释,声明变量,定义函数
Sep 29 #Javascript
JS当前页面登录注册框,固定DIV,底层阴影的实例代码
Sep 29 #Javascript
Bootstrap Table从服务器加载数据进行显示的实现方法
Sep 29 #Javascript
dul无法加载bootstrap实现unload table/user恢复
Sep 29 #Javascript
微信小程序  简单实例(阅读器)的实例开发
Sep 29 #Javascript
You might like
PHP 无限分类三种方式 非函数的递归调用!
2011/08/26 PHP
ThinkPHP中RBAC类的四种用法分析
2014/11/24 PHP
深入解析PHP中SESSION反序列化机制
2017/03/01 PHP
求得div 下 img的src地址的js代码
2007/02/28 Javascript
ArrayList类(增强版)
2007/04/04 Javascript
prototype 中文参数乱码解决方案
2009/11/09 Javascript
JavaScript 类的定义和引用 JavaScript高级培训 自定义对象
2010/04/27 Javascript
javascript 获取页面的高度及滚动条的位置的代码
2010/05/06 Javascript
jquery选择器之内容过滤选择器详解
2014/01/27 Javascript
jQuery中index()方法用法实例
2014/12/27 Javascript
JavaScript实现自动生成网页元素功能(按钮、文本等)
2015/11/21 Javascript
jQuery图片轮播实现并封装(一)
2016/12/03 Javascript
JS 组件系列之 bootstrap treegrid 组件封装过程
2017/04/28 Javascript
用vue构建多页面应用的示例代码
2017/09/20 Javascript
解决JSON.stringify()自动将中文转译成unicode的问题
2018/01/05 Javascript
详解Webpack多环境代码打包的方法
2018/08/03 Javascript
又拍云 Node.js 实现文件上传、删除功能
2018/10/28 Javascript
Django+vue跨域问题解决的详细步骤
2019/01/20 Javascript
通过实例讲解JS如何防抖动
2019/06/15 Javascript
[50:01]Ti4 冒泡赛第二天 NEWBEE vs Titan
2014/07/15 DOTA
[01:19:35]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#2Fnatic VS OG第二局
2016/03/05 DOTA
[01:10:27]DOTA2-DPC中国联赛正赛 SAG vs XG BO3 第二场 3月5日
2021/03/11 DOTA
python Django模板的使用方法(图文)
2013/11/04 Python
决策树的python实现方法
2014/11/18 Python
在Python的Django框架中创建语言文件
2015/07/27 Python
python第三方库学习笔记
2020/02/07 Python
python GUI库图形界面开发之PyQt5打开保存对话框QFileDialog详细使用方法与实例
2020/02/27 Python
python删除某个目录文件夹的方法
2020/05/26 Python
详解Python高阶函数
2020/08/15 Python
Python中猜拳游戏与猜筛子游戏的实现方法
2020/09/04 Python
大学竞选班长演讲稿
2014/04/24 职场文书
2014年作风建设心得体会
2014/10/22 职场文书
房地产销售经理岗位职责
2015/02/02 职场文书
幼儿园安全教育月活动总结
2015/05/08 职场文书
2022年四月新番
2022/03/15 日漫
基于Python实现对比Exce的工具
2022/04/07 Python