JSON格式讲解,JSON获取对象,JSONObject和JSONArray的操作

soゝso 2016-08-22 18:41:03 9138

这里就不说JSON是什么了。如果还不知道JSON是什么,先看下面几篇文章。

10分钟掌握JSON、XML、JSON解析

JSON是什么?它能带来什么?它和XML比较?

JSON  非常易学易用。所以,在短短几年中,它就取代 XML  ,成为了互联网上最受欢迎的数据交换格式。

1.为什么有JSON的出现。

JSON  作为一种简易的传输数据格式,当然也可以用 JSON  来表示一些事务。

我们在日常的编程中应该能感觉到,有Object(对象) Array(数组) 数据格式,就完全够了,就能存储和传输任意需求。然而我们的 JSON  就包含了这基本的Object Array

2.JSON格式

{
    "name": "SOJSON",
    "age": "27",
    "sex": "男",
    "skill": [
        "Java",
        "IOS",
        "Android"
    ]
}

上面运用了Object 和 Array。

{
    "skill": [ "Java", "IOS", "Android"         ]
}

可以看作是序列(sequence),就是连续的表达方式。

{
    "name": "SOJSON"
}

可以看作是映射(mapping),以键值对的方式表达方式。

3.JSON的取值

键值对Demo,如:var data = {"name": "SOJSON"};

取到name的值。那么就是 data.name  即可,或者 data["name"]

可能大多数人知道data.name 的方式取值,但是 data["name"] 的方式知道的稍微少一点,以至于如果这个JSON是这样 {"1":"2"} 怎么取值呢?

可能有人说 data.1 ?

我告诉你绝对报错,所以有的人为了逃避这个问题,会采用这种命名方式, {"id1":"2"},也就是取值的时候,在前面加上一个字符串,也就可以 data.id1 取值了,这是正确的,其实没必要。 data["1"] 如果你知道这样可以,你还那样去存储吗?

数组Demo,如 var data = {"skill": [ "Java", "IOS", "Android" ]};

首先它外面是一个键值对,只不过Value值是一个数组,那么我们要取到Java怎么取呢?

这样:data.skill[1] ;

是不是so easy ? ?

ps:总结起来就是那么简单,遇到 “{” 就 “.” ,你看data.name、data.skill 。是不是,只不过数值类你得注意点,然后遇到“[” 你就当数组处理,下标去取,或者循环,去取,data.skill[1] 。

版权所属:SO JSON在线解析

原文地址:https://www.sojson.com/blog/19.html

转载时必须以链接形式注明原始出处及本声明。

本文主题:

如果本文对你有帮助,那么请你赞助我,让我更有激情的写下去,帮助更多的人。

相关文章
json 解析与生成工具类 ,JSON操作讲解(附件)
天气API,全国天气 JSON API接口,可以获取十五天的天气预报
免费天气API,全国天气 JSON API接口,可以获取五天的天气预报
免费天气API,天气JSON API,不限次数获取十五天的天气预报
JSON数据格式JSON格式化介绍,JSON格式介绍。
Java 获取图片属性、获取图片EXIF属性操作方法[metadata-extractor]
Java获取域名,Java从URL地址中获取域名,Java从Request 获取域名
Java 随机从 List 随机获取多个不重复对象,Mysql 随机10条数据
HttpClient获取访问域名的真实ip,HttpClient请求获取目标IP地址
根据域名获取IP地址,Java 获取域名的IP地址
最新文章
iOS版淘宝打开提示“您使用的程序是内测版本,将于2020-03-28到期,到期将无法使用,请尽快下载最新版本” 842
关于一位“caoz的梦呓”的大佬在微信公众号喷我的整体回复 57942
DNS TXT记录添加方法,ICP备案信息屏蔽查询处理方案讲解 2819
SEO优化的最佳时间段即将来临,春节最佳SEO优化讲解 2295
SEO实战分析-排名最近突然掉光了问题排查,几个大站关键词下降SEO问题分析 2271
Java模拟WSS websocket ssl请求,Java WSS模拟请求代码示例 4941
Springboot 集成 Ehcache 代码讲解 5725
阿里云 RDS Specified key was too long; max key length is 767 bytes 解决方案 2158
Springboot HTTP Get/Post 请求讲解,Springboot几行代码完成Http请求 6070
天气免费API接口,天气API接口请求讲解及源码下载 28737
最热文章
我为什么要选择RabbitMQ ,RabbitMQ简介,各种MQ选型对比 369512
苹果电脑Mac怎么恢复出厂系统?苹果系统怎么重装系统? 342483
免费天气API,全国天气 JSON API接口,可以获取五天的天气预报 307386
免费天气API,天气JSON API,不限次数获取十五天的天气预报 215423
最新MyEclipse8.5注册码,有效期到2020年 (已经更新) 206954
Elasticsearch教程(四) elasticsearch head 插件安装和使用 181496
Jackson 时间格式化,时间注解 @JsonFormat 用法、时差问题说明 113815
Elasticsearch教程(一),全程直播(小白级别) 101338
谈谈斐讯路由器劫持,你用斐讯路由器,你需要知道的事情 100517
Elasticsearch教程(六) elasticsearch Client创建 90290

骚码加入我们 / 千人QQ群:259217951

入群需要5元为的是没有垃圾广告,如果没有QQ钱包,可以加群主拉进。

二维码生成 来自 >> 二维码生成器

支付扫码

所有赞助/开支都讲公开明细,用于网站维护:赞助名单查看

查看我的收藏

正在加载... ...