Web框架开发-Ajax

一、 Ajax准备知识:json

1、json(Javascript  Obiect  Notation,JS对象标记)是一种轻量级的数据交换格式

1

2

它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。

简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

  

2、json其实是从js中拿出来的一个对象,也可以说json是js的一个子集

 需要知道的:json的格式来源于js的格式

1、js支持单引号,也支持双引号,也可以没有引导

1

2

3

4

5

6

//在js中吧{}这样的类型叫做对象,js中没有字典一说

data = {

    'name':'mike',

    "name":"mike",

     name:"mike"       

}     //js对象默认会把自己的键当成字符串处理,所以可以加引号也可以不加

  

2、json的格式

1

2

1、json只认双引号的

2、json一定是一个字符串

  

3、下面我们看看哪些是合格的字符串,哪些不是?

合格的json对象:

1

2

3

4

5

6

7

["one", "two", "three"]

{ "one": 1, "two": 2, "three": 3 }

{"names": ["张三", "李四"] }

[ { "name": "张三"}, {"name": "李四"} ]

  

不合格的json对象

+ View Code

  

+++++++++++++++python中的序列化(dumps)与反序列化(loads)++++++++++++++

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

import json

i = 10

s = "dsfdsf"

l = [11, 22, 33]

dic = {"name": "mike", "age": 22}

b = True

# 把基本数据类型转换成字符串的形式

print(json.dumps(i), type(json.dumps(i)))

print(json.dumps(s), type(json.dumps(s)))

print(json.dumps(l), type(json.dumps(l)))

print(json.dumps(dic), type(json.dumps(dic)))

print(json.dumps(b), type(json.dumps(b)))

# ===========json反序列化===========

d = {"a": 1, "b": "faddfd"}

data = json.dumps(d)

print(data, type(data))

f = open("a.txt", "w")

f.write(data)

f.close()

# =========json序列化=========

f = open("a.txt", "r")

datat = f.read()

print(datat, type(data))

data = json.loads(datat)

print(data, type(data))

  

+++++++++++++++JS中的序列化(stringify)与反序列化(parse)++++++++++++++++++

JSON.stringify():用于将一个JavaScript对象转换为JSON字符串

JSON.parse():用于将一个JSON字符串转换为JavaScript对象

1

2

3

4

5

6

7

8

9

10

11

<script>

    // =======js中的json序列化=========

    s = '{"name": 1}';

    var data = JSON.parse(s);

    console.log(data)

    console.log(typeof data); //object

    //========js中的json的反序列化=====

    s2 = {'name': 'mike'}

    console.log(JSON.stringify(s2), typeof JSON.stringify(s2)) // string

</script>

二、JSON和XML的比较

1、XML也是存数据的一种格式,也是一种标记语言。它是利用节点进行查找的

2、JSON 格式于2001年由 Douglas Crockford 提出,目的就是取代繁琐笨重的 XML 格式。

JSON 格式有两个显著的优点:书写简单,一目了然;符合 JavaScript 原生语法,可以由解释引擎直接处理,不用另外添加解析代码。所以,JSON迅速被接受,已经成为各大网站交换数据的标准格式,并被写入ECMAScript 5,成为标准的一部分。

XML和JSON都使用结构化方法来标记数据,下面来做一个简单的比较。

用XML表示中国部分省市数据如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

<?xml version="1.0" encoding="utf-8"?>

<country>

    <name>中国</name>

    <province>

        <name>黑龙江</name>

        <cities>

            <city>哈尔滨</city>

            <city>大庆</city>

        </cities>

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/767484.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

go 基础中的一些坑

类型转换 在 go 语言中&#xff0c;类型转换是显式的&#xff0c;不会自动转换 go 复制代码 func main(){ i : 100 var f float64 f float64(i) } string 转换成 int 需要借助 strconv 包 使用 strconv.Atoi 函数将 string 转换成 int&#xff0c;转换后它会输出两个值&…

计算机组成原理-5-输入输出系统

5. 输入输出系统 文章目录 5. 输入输出系统5.1 概述5.1.1 I/O系统的发展概况5.1.2 I/O系统的组成5.1.3 I/O设备与主机的连接5.1.4 I/O设备与主机传送信息的控制方式 5.2 I/O设备5.3 I/O接口5.4 控制方式5.4.1 程序查询方式5.4.2 程序中断方式5.4.3 DMA方式5.4.4 程序中断方式与…

vue 控制窗口禁止缩放,已解决

注意&#xff1a;不是浏览器窗口禁止缩放 1.vue框架中&#xff0c;index.html文件head标签中加上内容 <meta name"viewport" content"widthdevice-width, initial-scale1, maximum-scale1, user-scalable0"><script>document.addEventListen…

RabbitMQ 01

01.定义 02.功能

apifox创建接口含中文字符报错的两种解决方案

针对apifox的含中文报错解决方法&#xff1a; 方法一&#xff1a;创建相应接口后&#xff0c;在设置中URL自动编码为WHATING。 方法二&#xff1a;直接将浏览器的url复制到apifox中&#xff0c;浏览器会自动解析配置中文转换路径。

springboot297毕业生实习与就业管理系统的设计与实现

毕业生实习与就业管理系统 摘 要 使用旧方法对毕业生实习与就业管理系统的信息进行系统化管理已经不再让人们信赖了&#xff0c;把现在的网络信息技术运用在毕业生实习与就业管理系统的管理上面可以解决许多信息管理上面的难题&#xff0c;比如处理数据时间很长&#xff0c;数…

ADS版图优化方法---使用EM-Cosimulation对版图进行OPTIM

ADS版图优化方法—使用EM-Cosimulation对版图进行OPTIM 一般来说&#xff0c;对原理图进行OPTIM优化的方法大伙用的都比较6了&#xff0c;跑起来也非常快。但是得到版图又可能和原理图的结果差的非常大&#xff0c;为了优化版图又不得不重新对原理图的参数进行调谐优化&#x…

这个国产原型设计工具,建议PM新人一定要用!

Hello小伙伴们&#xff01;我是榛妮&#xff0c;原BAT大厂女产品经理一枚&#xff0c;目前在香港创业。 一转眼&#xff0c;做产品经理已经8年&#xff0c;想想入行时的种种往事&#xff08;尴尬情况&#xff09;&#xff0c;至今仍然历历在目。 说起刚入行时遇到的那些问题&a…

qt拖拽事件重写

1.qt中的拖拽事件步骤 1设置接受拖拽 2重写事件就可以了 3其他的控件如何要可以套模板 2.例子 #include <QGroupBox> #include <QObject> #include <QDragEnterEvent> #include <QFileInfo> #include <QMimeData>//重写&#xff0c;指出拖拽指…

web蓝桥杯真题:布局切换

代码及注释&#xff1a; <!-- TODO&#xff1a;请在下面实现需求 --> <div class"bar"> //动态添加类名<a class"grid-icon" :class"changeBar 0 ? active : " click"changeBar 0"></a><a class&qu…

蓝桥杯物联网Lora通信功能总结

1、LORA通信在函数LORA被初始化的时候就已经处于接收状态 即开机即能接收数据 2、LORA数据的接收以及发送都通过FIFO数据线 3、LORA的收发同时进行会产生FIFO数据线的通信干扰 4、LORA_Rx在FIFO中有数据的时候才会取出数据&#xff0c;FIFO没有数据会直接跳过 当LORA在发送数…

服务器运行一段时间后

自己记录一下。 一、查看目录占用情况 df -h 命令查看磁盘空间 du -ah --max-depth=1 / 查看根目录下各个文件占用情况 二、mysql日志清空 这个日志是可以清空的 echo > /usr/local/mysql/data/syzl-db2.log #将文件清空 说明: 这个文件这么大是因为,开启 …

自动驾驶国际标准ISO文件

Coordinate system&#xff1a;Road vehicles — Vehicle dynamics and road-holding ability — Vocabulary

一、springboot 集成 spring-boot-starter-data-redis

文章目录 前言一、 springboot 版本二、引入 redis 依赖三、增加配置文件四、增加配置类1、 RedissonConfig2、RedisConfig 五、增加操作类&#xff0c;主要操作 string 总结 前言 一、 springboot 版本 <spring-boot.version>2.3.5.RELEASE</spring-boot.version>…

TypeScript基础类型

string、number、bolean 直接在变量后面添加即可。 let myName: string Tomfunction sayHello(person: string) {return hello, person } let user Tom let array [1, 2, 3] console.log(sayHello(user))function greet(person: string, date: Date): string {console.lo…

基于python+vue城市交通管理系统的设计与实现flask-django-php-nodejs

此系统设计主要采用的是python语言来进行开发&#xff0c;采用django/flask框架技术&#xff0c;框架分为三层&#xff0c;分别是控制层Controller&#xff0c;业务处理层Service&#xff0c;持久层dao&#xff0c;能够采用多层次管理开发&#xff0c;对于各个模块设计制作有一…

数学建模综合评价模型与决策方法

评价方法主要分为两类&#xff0c;其主要区别在确定权重的方法上 一类是主观赋权法&#xff0c;多次采取综合资讯评分确定权重&#xff0c;如综合指数法&#xff0c;模糊综合评判法&#xff0c;层次评判法&#xff0c;功效系数法等 另一类是客观赋权法&#xff0c;根据各指标…

力扣HOT100 - 15. 三数之和

解题思路&#xff1a; 排序 双指针 注意&#xff1a; 在nums[ k ]&#xff0c;nums[ i ]&#xff0c;nums[ j ]的值与自身重复时均会进行跳过&#xff0c;防止重复添加。 如代码中&#xff1a; 防止nums[ k ]重复&#xff1a;if(k>0&&nums[k]nums[k-1]) continue…

Web前端全栈HTML5通向大神之路

本套课程共三大阶段&#xff0c;六大部分&#xff0c;是WEB前端、混合开发与全栈开发必须要掌握的技能&#xff0c;从基础到实践&#xff0c;是从编程小白成长为全栈大神的最佳教程&#xff01; 链接&#xff1a;https://pan.baidu.com/s/1S_8DCORz0N2ZCdtJg0gHsw?pwdtjyv 提取…

Java进阶—GC回收(垃圾回收)

1. 什么是垃圾回收 垃圾回收(Garbage Collection&#xff0c;GC)是Java虚拟机(JVM)的一项重要功能&#xff0c;用于自动管理程序中不再使用的内存。在Java中&#xff0c;程序员不需要手动释放内存&#xff0c;因为GC会自动检测并回收不再使用的对象&#xff0c;从而减少内存泄…