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

相关推荐
消失的旧时光-19436 分钟前
Kotlinx.serialization 项目集成
android·kotlin·json
百***68823 小时前
使用 Logback 的最佳实践:`logback.xml` 与 `logback-spring.xml` 的区别与用法
xml·spring·logback
专注VB编程开发20年3 小时前
XML节点SelectSingleNode(“msbuild:DebugType“ 为什么要加msbuild
xml·visual studio
坚持就完事了16 小时前
JSON的了解
json
奥吼吼~~1 天前
标准输入输出stdio和JSON-RPC
网络协议·rpc·json
开开心心就好1 天前
无需函数:Excel数据筛选工具推荐
xml·网络·pdf·华为云·word·excel·音视频
littlepeanut.top2 天前
C++中将FlatBuffers序列化为JSON
开发语言·c++·json·flatbuffers
朝新_2 天前
【实战】动态 SQL + 统一 Result + 登录校验:图书管理系统(下)
xml·java·数据库·sql·mybatis
遇见火星2 天前
LINUX的 jq命令行处理json字段指南
java·linux·json·jq
凌波粒2 天前
SpringMVC基础教程(2)--Controller/RestFul风格/JSON/数据转发和重定向
java·后端·spring·json·restful