深度解读JSON形式的不同结构说明

开发
JSON有很多值得学习的地方,这里我们主要介绍JSON,包括介绍XX等方面要使用JSON来传输数据,必须将所承载的数据转换成json的格式。JSON形式如下:

这两种方式都可以效果是相同的,都是返回的javascript的对象或数组。你现在就可以在客户端的javascript中使用这个对象或数组了 ,那么就需要将包含中文的内容使用iconv或者mb转为UTF-8再进行json_encode,上面输出结果如下

JSON建构于两种结构:
1.“名称/值”对的集合。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hashtable),有键列表(keyedlist),或者关联数组(associativearray)。

2.值的有序列表。在大部分语言中,它被理解为数组(array)。这些都是常见的数据结构。JSON形式事实上大部分现代计算机语言都以某种形式支持它们。这使得一种数据格式在同样基于这些结构的编程语言之间交换成为可能。

JSON具有以下这些形式:
1.对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘JSON形式名称/值’对”之间使用“,”(逗号)分隔。例:{"name":"张三","age":20,"birthday":"1982-07-20"}
这是对象在json中的表示形式.即{"key1":"value1","key2":"value2",...}

2.数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。例:["张三","李四","王五"]这是数组在json中的表示形式.即[value1,value2,value3,....]#t#

3.值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、null、对象(object)或者数组(array)。这些结构可以嵌套。

4.字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(characterstring)。字符串(string)与C或者Java的字符串非常相似。

5.数值(number)也与C或者Java的数值非常相似。除去未曾使用的八进制与十六进制格式。JSON形式除去一些编码细节。注:你只要记住前两种形式就可以了。
注意:key一定要用引号,而value如果是字符串,也一定要用引号引起来。切记,有的系统中,只当双引号是有效的,而不认单引号。所以建议用双引号。

责任编辑:chenqingxiang 来源: CSDN
点赞
收藏

51CTO技术栈公众号