json定义及jquery操作json的方法


Posted in Javascript onOctober 03, 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 相关文章推荐
一个很简单的办法实现TD的加亮效果.
Jun 29 Javascript
javascript 类方法定义还是有点区别
Apr 15 Javascript
JQuery的一些小应用收集
Mar 27 Javascript
关于setInterval、setTimeout在jQuery中的使用注意事项
Sep 28 Javascript
js获取浏览器的可视区域尺寸的实现代码
Nov 30 Javascript
深入理解JavaScript系列(1) 编写高质量JavaScript代码的基本要点
Jan 15 Javascript
javascript break指定标签打破多层循环示例
Jan 20 Javascript
基于jQuery1.9版本如何判断浏览器版本类型
Jan 12 Javascript
Bootstrap输入框组件简单实现代码
Mar 06 Javascript
JavaScript 隐性类型转换步骤浅析
Mar 15 Javascript
vue中的过滤器实例代码详解
Jun 06 Javascript
layui默认选中table的CheckBox复选框方法
Sep 19 Javascript
javascript中异常处理案例(推荐)
Oct 03 #Javascript
switch语句的妙用(必看篇)
Oct 03 #Javascript
js中scrollTop()方法和scroll()方法用法示例
Oct 03 #Javascript
js鼠标按键事件和键盘按键事件用法实例汇总
Oct 03 #Javascript
JavaScript对象创建模式实例汇总
Oct 03 #Javascript
js实现的光标位置工具函数示例
Oct 03 #Javascript
js获取腾讯视频ID的方法
Oct 03 #Javascript
You might like
一个ubbcode的函数,速度很快.
2006/10/09 PHP
phpMyAdmin下载、安装和使用入门教程
2007/05/31 PHP
php在文件指定行中写入代码的方法
2012/05/23 PHP
使用php实现快钱支付功能(涉及到接口)
2013/07/01 PHP
浅谈PDO的rowCount函数
2015/06/18 PHP
浅谈php+phpStorm+xdebug配置方法
2015/09/17 PHP
php命令行(cli)模式下报require 加载路径错误的解决方法
2015/11/23 PHP
PHPExcel 修改已存在Excel的方法
2018/05/03 PHP
thinkPHP5框架分页样式类完整示例
2018/09/01 PHP
PHP使Laravel为JSON REST API返回自定义错误的问题
2018/10/16 PHP
javascript基础第一章 JavaScript与用户端
2010/07/22 Javascript
很棒的学习jQuery的12个网站推荐
2011/04/28 Javascript
JavaScript实现的一个计算数字步数的算法分享
2014/12/06 Javascript
js实现背景图片感应鼠标变化的方法
2015/02/28 Javascript
jQuery实现的类似淘宝网站搜索框样式代码分享
2015/08/24 Javascript
JS实现可关闭的对联广告效果代码
2015/09/14 Javascript
jQuery easyUI datagrid 增加求和统计行的实现代码
2016/06/01 Javascript
解决Angular.Js与Django标签冲突的方案
2016/12/20 Javascript
微信小程序-拍照或选择图片并上传文件
2017/01/06 Javascript
详解vue中computed 和 watch的异同
2017/06/30 Javascript
AngularJS select加载数据选中默认值的方法
2018/02/28 Javascript
Vue.js 踩坑记之双向绑定
2018/05/03 Javascript
说说Vuex的getters属性的具体用法
2019/04/15 Javascript
JS异步错误捕获的一些事小结
2019/04/26 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
2020/02/09 Javascript
JS+canvas五子棋人机对战实现步骤详解
2020/06/04 Javascript
解决vant的Toast组件时提示not defined的问题
2020/11/11 Javascript
flask中主动抛出异常及统一异常处理代码示例
2018/01/18 Python
详谈python在windows中的文件路径问题
2018/04/28 Python
python实现黑客字幕雨效果
2018/06/21 Python
python判断链表是否有环的实例代码
2020/01/31 Python
Python用K-means聚类算法进行客户分群的实现
2020/08/23 Python
css3如何绘制一个圆圆的loading转圈动画
2018/01/09 HTML / CSS
书法培训心得体会
2014/01/05 职场文书
小学生红领巾广播稿
2014/01/21 职场文书
MySQL基于索引的压力测试的实现
2021/11/07 MySQL