JSON

JSON基础学习

字号+ 作者:H5之家 来源:H5之家 2017-10-01 17:06 我要评论( )

Ajax firstName=BrettlastName=McLaughlinemail=brett@newInstance.com GET 请求发送的信息就是采用这种格式。 Ajax : request firstNameBrett/firstName lastNameMcLaughlin/lastName emailbrett@newInstance.com/email /request XML 本文讨论另一种数据格


Ajax

firstName=Brett&lastName=McLaughlin&email=brett@newInstance.com


GET
请求发送的信息就是采用这种格式。


Ajax

<request> <firstName>Brett</firstName> <lastName>McLaughlin</lastName> <email>brett@newInstance.com</email> </request>


XML

本文讨论另一种数据格式,JavaScript Object NotationJSONJSON看起来既熟悉又陌生。它提供了另一种选择,选择范围更大总是好事情。

添加 JSON


XML

Web
表单的数据,并将数据转换为一种适合发送给服务器端程序的格式。


JavaScript

JavaScript

XML
,就有点儿多此一举
了。这时就合适使用

JavaScript
对象转换成可以随请求发送的数据(同步或异步都可以)。

JSON并不是某种魔弹;但是,它对于某些非常特殊的情况是很好的选择。

JSON基础


JavaScript

JavaScript

{ "firstName": "Brett" }

firstName=Brett

{ "firstName": "Brett", "lastName":"McLaughlin", "email": "brett@newInstance.com" }


JSON
更容易使用,而且可读性更好。例如,它明确地表示以上三个值都是同一记录的一部分;花括号使这些值有了某种联系。

值的数组


XML
person1-firstName这样的形式。

{ "people": [ { "firstName": "Brett", "lastName":"McLaughlin", "email": "brett@newInstance.com" }, { "firstName": "Jason", "lastName":"Hunter", "email": "jason@servlets.com" }, { "firstName": "Elliotte", "lastName":"Harold", "email": "elharo@macfaq.com" } ]}

这不难理解。在这个示例中,只有一个名为people
的变量,值是包含三个条目的数组,每个条目是一个人的记录,其中包含名、姓和电子邮件地址。上面的示例演示如何用括号将记录组合成一个值。当然,可以使用相同的语法表示多个值(每个值包含多个记录):

{ "programmers": [ { "firstName": "Brett", "lastName":"McLaughlin", "email": "brett@newInstance.com" }, { "firstName": "Jason", "lastName":"Hunter", "email": "jason@servlets.com" }, { "firstName": "Elliotte", "lastName":"Harold", "email": "elharo@macfaq.com" } ], "authors": [ { "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" }, { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" }, { "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" } ], "musicians": [ { "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" }, { "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" } ] }


musicians

JSON
结构的中间改变表示数据的方式。

在处理 JSON 格式的数据时,没有需要遵守的预定义的约束。所以,在同样的数据结构中,可以改变表示数据的方式,甚至可以以不同方式表示同一事物。


JSON


JavaScript

JavaScript

JSON


JSON
格式的数据字符串直接赋值给它:

var people = { "programmers": [ { "firstName": "Brett", "lastName":"McLaughlin", "email": "brett@newInstance.com" }, { "firstName": "Jason", "lastName":"Hunter", "email": "jason@servlets.com" }, { "firstName": "Elliotte", "lastName":"Harold", "email": "elharo@macfaq.com" } ], "authors": [ { "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" }, { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" }, { "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" } ], "musicians": [ { "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" }, { "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" } ] }

这非常简单;现在people

访问数据


programmers

people.programmers[0].lastName;

注意,数组索引是从零开始的。所以,这行代码首先访问people
变量中的数据;然后移动到称为 programmers的条目,再移动到第一个记录([0]);最后,访问lastName
键的值。结果是字符串值
McLaughlin”。

下面是使用同一变量的几个示例。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 关于JSONObject与GSON解析JSON数据详解

    关于JSONObject与GSON解析JSON数据详解

    2017-10-02 10:02

  • Json.Net学习 异常处理

    Json.Net学习 异常处理

    2017-10-01 14:02

  • Json详解与使用

    Json详解与使用

    2017-10-01 13:05

  • 从零开始的 JSON 库教程(五):解析数组

    从零开始的 JSON 库教程(五):解析数组

    2017-10-01 11:05

网友点评
e