首页 > Web开发 > 详细

Json语法理解

时间:2020-05-14 21:17:58      阅读:49      评论:0      收藏:0      [点我收藏+]

JSON官方说明:https://www.json.org/json-zh.html

 

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。

本质上, JSON是一个基于文本的数据表达格式。

 

JSON包含两种基本数据结构:

(1)无序的键值对集合(A collection of name/value pairs)

  键值对集合,Json中称之为对象(Object)

 

  一个键值对包含key和value,之间通过冒号(:)分割。

  key使用使用双引号引起来的字符串表示。value可以是:

  • 双引号括起来的字符串(string)
  • 数值(number)
  • true
  • false
  • null
  • 对象(object)
  • 数组(array)

  

  键值对的集合以 { 开始,以 } 结束,键值对之间使用 逗号 分隔。

  技术分享图片

  样例:

     { "name" : "tom",  "age" :18}

 

   在不同的编程语言中,Json的 键值对集合 被解析成对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。

(2)有序的值列表(An ordered list of values)

   Json中称之为数组(array)。

   一个数据以 [ 开始、以 ] 结束,中间包含多个 value,value之间通过 逗号 分隔。

   如(1)中描述,value的类型可以是字符串、数值、true、false、null、object、array。

   技术分享图片

   样例:

      ["tom", "nicel", "liya"]

 

(3) value的嵌套

   如上所属,value字段可以是object、或数组(array)。称之为嵌套。如:

   如下样例中

   (a)Json文件包含1个键值对集合。这个集合中只有1个键值对,key是“person”,value是个数组。

   (b)数组包含3个value。每个value又是 1个 键值对集合(object)。

    {
       "person": [
           {
               "name": "tom",
                "age": 15,
                "Gender": "Male"
           },
          {
                "name": "nicel",
                "age": 21,
                "Gender": "Male"
          },
          {
                "name": "liya",
                "age": 19,
                "Gender": "Female"
           },
      }

    

(4)Json中字符串、数值的取值范围

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

   技术分享图片

  

数值(number)也与C或者Java的数值非常相似。除去未曾使用的八进制与十六进制格式。除去一些编码细节。   

    技术分享图片

  

(5)空白符

空白可以加入到任何符号之间。

    技术分享图片

Json语法理解

原文:https://www.cnblogs.com/yickel/p/12891184.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!