[html格式生成json数据]JSON数据格式介
篇一: JSON数据格式介绍
JSON是JavaScript Object Notation的简称,是一种轻量的数据表示方法。jason格式采用key:value的方式记录数据,非常直观,比XML简洁,因而大受欢迎
介绍jason格式前,先让我们看看XML格式。显然,XML 得到了相当多的关注,已经在Ajax 应用程序中广泛使用:
Brett
McLaughlin
*********************
这里的数据与前面看到的相同,但是这一次采用XML 格式。这没什么了不起的;这只是另一种数据格式,使我们能够使用XML 而不是纯文本和名称/值对。
本文讨论另一种数据格式,JavaScript Object Notation。JSON 看起来既熟悉又陌生。它提供了另一种选择,选择范围更大总是好事情。
添加JSON
在使用名称/值对或XML 时,实际上是使用JavaScript 从应
用程序中取得数据并将数据转换成另一种数据格式。在这些情况下,JavaScript 在很大程度上作为一种数据操纵语言,用来移动和操纵来自Web 表单的数据,并将数据转换为一种适合发送给服务器端程序的格式。
但是,有时候JavaScript 不仅仅作为格式化语言使用。在这些情况下,实际上使用JavaScript 语言中的对象来表示数据,而不仅是将来自Web 表单的数据放进请求中。在这些情况下,从JavaScript 对象中提取数据,然后再将数据放进名称/值对或XML,就有点儿多此一举了。这时就合适使用JSON:JSON 允许轻松地将JavaScript 对象转换成可以随请求发送的数据。JSON 并不是某种魔弹;但是,它对于某些非常特殊的情况是很好的选择。
JSON 基础
简单地说,JSON 可以将JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松
地传递这个字符串,或者在异步应用程序中将字符串从Web 客户机传递给服务器端程序。这个字符串看起来有点儿古怪,但是JavaScript 很容易解释它,而且JSON 可以表示比名称/值对更复杂的结构。例如,可以表示数组和复杂的对象,而不仅仅是键和值的简单列表。
简单JSON 示例
按照最简单的形式,可以用下面这样的JSON 表示名称/值对:{ “firstName”: “Brett” }
这个示例非常基本,而且实际上比等效的纯文本名称/值对占用
更多的空间:
firstName=Brett
但是,当将多个名称/值对串在一起时,JSON 就会体现出它的价值了。首先,可以创建包含多个名称/值对的记录,比如:{ “firstName”: “Brett”, “lastName”:”McLaughlin”, “email”: “*********************”}
从语法方面来看,这与名称/值对相比并没有很大的优势,但是在这种情况下JSON 更容易使用,而且可读性更好。,那么必须建立一种专有的数据格式,或者将键名称修改
为person1-firstName 这样的形式。
如果使用JSON,就只需将多个带花括号的记录分组在一起:
{ “people”: [
{ “firstName”: “Brett”, “lastName”:”McLaughlin”, “email”: “*********************”}, { “firstName”: “Jason”, “lastName”:”Hunter”,“email”:“******************”},
{ “firstName”: “Elliotte”, “lastName”:”Harold”, “email”: “*****************”}]}
这不难理解。在这个示例中,只有一个名为people 的变量,值是包含三个条目的数组,每个条目是一个人的记录,其中包含名、姓和地址。上面的示例演示如何用括号将记录组合成一个值。当然,可以使用相同的语法表示多个值:
{ “programmers”: [
{ “firstName”: “Brett”, “lastName”:”McLaughlin”, “email”: “*********************”}, { “firstName”: “Jason”, “lastName”:”Hunter”, “email”:“******************”},
{ “firstName”: “Elliotte”, “lastName”:”Harold”, “email”: “*****************”}],
“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” }
]
}
genre这里最值得注意的是,能够表示多个值,每个值进而包含多个值。但是还应该注意,在不同的主条目之间,记录中实际的名称/值对可以不一样。JSON 是完全动态的,允许在JSON 结构的中间改
变表示数据的方式。
在处理JSON 格式的数据时,没有需要遵守的预定义的约束。所以,在同样的数据结构中,可以改变表示数据的方式,甚至可以以不同方式表示同一事物。
在JavaScript 中使用JSON
着在JavaScript 中处理JSON 数据不需要任何特殊的API 或工具包。
将JSON 数据赋值给变量
例如,可以创建一个新的JavaScript 变量,然后将JSON 格式的数据字符串直接赋值给它:掌握了JSON 格式之后,在JavaScript 中使用它就很简单了。JSON 是JavaScript 原生格式,这意味
var people =
{ “programmers”: [
{ “firstName”: “Brett”, “lastName”:”McLaughlin”, “email”: “*********************”}, { “firstName”: “Jason”, “lastName”:”Hunter”, “email”: “******************”}, { “firstName”: “Elliotte”, “lastName”:”Harold”, “email”: “*****************”}],
“authors”: [
{ “firstName”: “Isaac”, “lastName”: “Asimov”, “genre”: “science fiction” },

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。