Day23_学点儿JSON_定义、数据格式、和XML比较、插件

1 JSON定义

定义:是一种轻量级的数据交换格式

JSON是JavaScript Object Notation缩写

特点:

  1. 易于程序员阅读和编写。
  2. 易于计算机解析和生成。
  3. 其实是javascript的子集:原生javascript支持JSON
javascript 复制代码
<script type="text/javascript">
   var student = {
        name:'gao',
        age: 23,
        print : function() {
         console.log("name" + this.name + ", age: " + this.age);
        }
   }
   console.log(student.name);
   student.print()
</script>

JSON是一种与语言无关的数据交换的格式,作用:

  1. 使用ajax进行前后台数据交换
  2. 移动端与服务端的数据交换

2 JSON数据格式

JSON的语法规则十分简单,可称得上"优雅完美 ",总结起来有:
JSON有两种结构:
1)对象格式:{"key1":obj1, "key2":obj2, "key3":obj3...}
2)数组/集合格式: [obj1,obj2,obj3...]
注意:JSON的key是字符串,JSON的value是Object
规则如下:

1)映射用冒号(":")表示。名称:值

2)并列的数据之间用逗号(",")分隔。名称1:值1,名称2:值2

3) 映射的集合(对象)用大括号("{}")表示。{名称1:值1,名称2:值2}

4) 并列数据的集合(数组)用方括号("[]")表示。

json 复制代码
     [
        {名称1:值,名称2:值2},
        {名称1:值,名称2:值2}
     ]

5)元素值可具有的类型:string, number, object, array, true, false, null
对象与数组:

1)对象(Object)用大括号({})表示

json 复制代码
Student:
{
    "id" : 12,
    "name" : "java1711",
    "age" : 20,
    "gender" : "男"
}

2)数组(Array)用方括号([])表示:

json 复制代码
List<Student>:   [{},{},{}]
[
    {
       "id" : 12,
        "name" : "java1711",
        "age" : 20,
        "gender" : "男"
    }
    ,
    {
       "id" : 13,
        "name" : "java1712",
        "age" : 21,
        "gender" : "女"
    }
]

3 JSON和XML比较

JSON常备拿来与XML做比较,因为JSON的诞生本来就或多或少要有取代XML的意思。

相比XML,JSON的优势如下:

  1. 没有结束标签,长度更短,读写更快。
  2. 能够直接被JavaScript解析器解析。
  3. 可以使用数组。

JSON:

json 复制代码
{
        "id" : 12,
         "name" : "gao",
         "age"  :   30,
         "gender" : "男",
         "interests" : ["篮球", "爬山", "旅游"]
}

XML:

xml 复制代码
<root>
    <id>12</id>
    <name>gao</name>
    <age>30</age>
    <gender>男</gender>
    <interest>篮球</interest>
    <interest>爬山</interest>
    <interest>旅游</interest>
</root>

JSON可以直接使用数组,但是XML没有直接定义数组,

如果数组很长,我们的代码中就要添加大量的没有实际意义的开始和结束标签,这对于网络传输是不利的。

XML主要是用在配置文件

4 JSON浏览器插件安装

https://www.baidufe.com/fehelper
https://layui.itze.cn/demo/table/user.json?page=2&limit=10

相关推荐
Hqst_xiangxuajun4 小时前
万兆SFP光纤笼子交换机和PCIE网卡主板上起到什么作用
网络·fpga开发·oracle·sqlite·json·信息与通信
38242782715 小时前
python:输出JSON
前端·python·json
就叫飞六吧18 小时前
JSONPath“隔空取物”思想,直击JSON深处的目标字段
服务器·windows·json
arbalest108019 小时前
xml文件学习
xml
卓码软件测评21 小时前
第三方软件测评机构:【Gatling构建JSON请求体StringBody、ElFileBody和Pebble模板的使用】
测试工具·性能优化·json·测试用例
爱敲点代码的小哥21 小时前
json序列化和反序列化 和 数组转成json格式
java·前端·json
charlee441 天前
C++中JSON序列化和反序列化的实现
c++·json·序列化·结构体·nlohmann/json
救救孩子把1 天前
记录份Docker daemon.json配置-Docker镜像加速
docker·容器·json
博大世界1 天前
Matlab操作Json文件
json