来源http://www.sojson.com/blog/19.html

这里就不说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。

  1. {
        "skill": [

  2.        "Java",

  3.        "IOS",

  4.        "Android"

  5.         ]
    }

可以看作是序列(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] 。

本文主题

json JSON格式

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