JSON学习总结
最近几天使用json的需求比较急迫,所以学习了一下json。此文仅当笔记,以防忘却。
此文主要分为js和java总结:
先介绍json格式:
JSON 数据的书写格式是:名称/值对。
***:可以更容易的理解json的嵌套格式。
JSON 值可以是:
- 数字(整数或浮点数)
- 字符串(在双引号中)
- 逻辑值(true 或 false)
- 数组(在方括号中) ***
- 对象(在花括号中) ***
- null
1. JS
JSON的全称为:JavaScript 对象表示法(JavaScript Object Notation)。
可见json开始是为js服务的,但在之后的发展中,逐渐成为了独立于各种语言的数据传输格式。
JS的使用主要分为:
1> 构造JSON数据单元
a.json属于js对象表示法,其初始化完全可以和对象一致,也就是说,当js对象完成初始化时,此对象就是一个json格式的数据单元。
b.eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。必须把文本包围在括号中,这样才能避免语法错误:
var obj = eval ("(" + txt + ")");
c. JSON.parse(); 可以使字符串转化为JSON格式数据,亦可以理解为构造为一个js对象。
2>JSON对象解析为字符串
a. JSON.stringify(); 可以将json数据单元转化为字符串格式。
b. 对象数组转为的String转为JSON:
//ObjArrayString: {"accountName":"分类03","accountCode":"3236547896562323","accountId":"1720","defaultId":1},{"accountName":"kaihuhang02","accountCode":"3236896589875426","accountId":"1721","defaultId":0}
ObjectArray = JSON.parse("["+ObjArrayString+"]");
*JSON.parse()与JSON.stringify()方法都是浏览器自带的方法,但是ie8-不支持,需要引用 json.js 兼容。
2. JAVA
java中的json使用主要使用json-lib.jar包,其中封装一些可用的json方法。
主要使用的类有:JSONArray、JSONObject
JSONArray实现了List接口;
JOSNObject实现了Map接口;
* 故可以利用上转型直接赋值给list 或 map;
两者皆可以使用T.fromObject(String)实现字符串转化为相应的类;
JSONObject类可以在JSONArray.getJSONObject()获取;
JSONObject可以使用各种get方法获取其中的元素值。
JSON学习总结的更多相关文章
- [Network] HTML、XML和JSON学习汇总
写在前面:楼主也是刚刚接触这方面的知识,之前完全是零基础,后来经朋友推荐了几个不错的博文,看完以后豁然开朗.但是此博文更加偏重于基础知识介绍(其实更深的楼主也还不了解,这方面的大神请绕道),只是分享个 ...
- JSON 学习笔记
学习使用json过程随笔: json数组格式 var employees = [ { "firstName":"Bill" , "lastName&q ...
- C# JSON学习之序列化与反序列化
在我的个人计划中,学习制作c#下的曲线平台属于下半年的重点.关于前后端的数据传递-json数据的学习很有必要,通过一个例子来加深自己的理解. 新建一个console控制台程序,通过导入NewstonS ...
- 前端——JSON学习总结
学习网址: https://www.bilibili.com/video/BV1Pt411u7R3 什么是JSON?(以下有关概念内容为视频中学习文档相关内容,代码为本人学习时使用的有关代码) JSO ...
- JSON学习笔记一 —— 一些与移动端交互产生JSON数据的方法
/** * 测试的返回JSon方法,正式的不会用 * @author MrHandler * @param reqCode * @param joinStr * ...
- JSON学习
1.JSON 语法是 JavaScript 对象表示语法的子集. l 数据在名称/值对中 l 数据由逗号分隔 l 花括号保存对象 l 方括号保存数组 JSON 值可以是: l 数字(整数或浮 ...
- Json学习笔记
一.昨天内容回顾 创建ajax对象 a) 主流浏览器 new XMLHttpRequest(); b) IE浏览器 new ActiveXObject("Msxml2.XMLHTTP. ...
- Json 学习
json 格式: 1) 并列的数据之间用逗号(", ")分隔. 2) 映射用冒号(": ")表示. 3) 并列数据的集合(数组)用方括号("[]&qu ...
- JSON学习之二
1.JSON语法是JavaScript对象表示法的子集,语法规则: **数据在名称/值对中 **数据由逗号分隔 **花括号保存对象 **方括号保存数组 2.JSON名称/值对:JSON数据的书写格式是 ...
随机推荐
- HDU 5968:异或密码(暴力)
http://acm.hdu.edu.cn/showproblem.php?pid=5968 题意:中文题意. 思路:一开始不会做,后来发现数据范围很小,而且那个数要是连续的,所以可能把所有情况枚举出 ...
- 在ecshop顶部会员信息提示区显示会员等级
会员登陆后,在顶部会员信息提示区显示会员等级会员登陆后会在顶部出现这样的提示:您好,test2, 欢迎您回来 ! 进入用户中心 |退出现在设想在会员名后面加上“会员等级”效果如下:您好,test2, ...
- dirname和basename命令
dirname返回文件所在目录路径,而basename则相反,去掉路径返回最后的文件名. dirname指令 1.功能:从给定的包含绝对路径的文件名中去除文件名(非目录的部分),然后返回剩下的路径(目 ...
- java从命令行接收多个数字,求和之后输出结果
设计思想:获取输入数的个数,然后将要相加的数字转换成为浮点型进行相加,最后进行输出 源代码: package Add; import java.util.Scanner; // 严羽卿 2015. ...
- PHP之分页类
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2016/6/22 * Time: 21:37 */ Class P ...
- c#xml追加读取节点
读取 if (File.Exists("Book.xml")) { XmlDocument doc = new XmlDocument(); doc.Load("Book ...
- view class source code with JAD plugin in Eclipse
The default class viewer doesn't decompile the class file so you cannot open and check the source co ...
- linux主次设备号介绍
1.主设备号与次设备号的功能 在Linux内核中,主设备号标识设备对应的驱动程序,告诉Linux内核使用哪一个驱动程序为该设备(也就是/dev下的设备文件)服务:而次设备号则用来标识具体且唯一的某个设 ...
- define与typedef 区别
1) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错.例如:#define PI 3. ...
- jquery easyui 弹出消息框
<html> <head> <!-- 导入easyui插件的js和css样式; --> <link rel="stylesheet" ty ...