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

相关推荐
sagima_sdu44 分钟前
Py2Neo 库将 Json 文件导入 Neo4J
oracle·json·neo4j
集成显卡2 小时前
axios平替!用浏览器自带的fetch处理AJAX(兼容表单/JSON/文件上传)
前端·ajax·json
爪哇学长9 小时前
SQL 注入详解:原理、危害与防范措施
xml·java·数据库·sql·oracle
极地星光1 天前
JSON-RPC-CXX深度解析:C++中的远程调用利器
c++·rpc·json
Amd7941 天前
Nuxt.js 应用中的 schema:beforeWrite 事件钩子详解
json·vite·配置·nuxt·验证·钩子·动态
꧁惜若༒奔已꧂1 天前
spring使用xml文件整合事务+druid+mybatis
xml·spring·mybatis
白萝卜弟弟1 天前
【MySQL】MySQL函数之JSON_EXTRACT
数据库·mysql·json
B1nna2 天前
SpringMVC学习记录(三)之响应数据
java·学习·json·springmvc·jsp
1024小神2 天前
package.json中“type“: “module“是什么含义,es6和commonjs的区别以及require和import使用场景
前端·json·es6
慧都小妮子2 天前
借助Aapose.Cells ,在 Node.js 中将 Excel 转换为 JSON
node.js·json·excel·aspose.cells