JavaScript异步Ajax与json总结

开发工具与关键技术:Visual Studio 2015 与 JavaScript
作者:郭程富
撰写时间:2020年4月30日

知识点:
 JSON:  
JSON:JavaScript对象表示法(JavaScript Object Notation)。
    JSON是存储和交换文本信息的语法:
    1.JSON是轻量级的文本数据交换格式
    2.JSON独立于语言和平台
    3.JSON具有自我描述性,更容易理解。
        类似于xml,比XML更小、更快、更易解析
        XML:指可扩展标记语言。XML被设计用来传输和存储数据。)
    1.JSON语法:
    JSON语法是JavaScript对象表示语法的子集
    1.数据在名称/值对中(数据在键值对中)
    2.数据由逗号分隔
    3.花括号保存对象({})
    4.方括号保存数组([])
    JSON值可以是:
    数字(整数或浮点数)
    字符串(在双引号中)
    布尔值(true或false)
    数组(在方括号中)
    对象(在花括号中)1
Null
JSON对象和JS对象的区别:
1.没有声明变量(JSON中没有变量的概念)。
2.末尾没有分号(因为这不是JavaScript语句,所以不需要分号)。
Js写法:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200430145457395.PNG)

JSON写法:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200430145506898.PNG)

Ajax(Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)) [eɪˈsɪŋkrənəs]):
   Ajax不是某种编程语言 
   AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
   传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。
   有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图等等
   1.同步与异步
      同步:就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去;
      同步: 
        请求一 1ms
        请求二 1ms
        请求三  1ms
        异步 1.3ms
      异步:是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。
      异步实现:
         1、运用HTML与CSS来实现页面,表达信息
         2、运用XMLHttpRequest和web服务器进行数据的异步交换
         3、运用JavaScript操作DOM,实现动态局部刷新
     2.AJAX-创建XMLHttpRequest 对象
            什么是XMLHttpRequest对象?XMLHttpRequest对象用于在后台与服务器交换数据(具体介绍可见w3c),创建XMLHttpRequest对象,所有现代浏览器(IE7+、Firefox、Chrome、Safari 以及 Opera)均内建 XMLHttpRequest 对象。
            创建XMLHttpRequest对象的语法:
                var xhr = new XMLHttpRequest();
            老版本的Internet Explorer(IE5和IE6)使用ActiveXObject对象:
                var xhr=new ActiveXObject("Microsoft.XMLHTTP");
            为了应对所有的现代浏览器,包括IE5和IE6,请检查浏览器是否支持XMLHttpRequest对象.如果支持,则创建 XMLHttpRequest 对象。如果不支持,则创建 ActiveXObject :
                var xhr;
                if(window.XMLHttpRequest){
                xhr=new XMLHttpRequest();
                    }else{
                xhr=new ActiveXObject("Microsoft.XMLHTTP");
                    }
        3.AJAX - 向服务器发送请求
             向服务器发送请求,我们使用XMLHttpRequest对象的 open() 和 send() 方法:
                open(method,url,asyns) 规定请求的类型、URL 以及是否异步处理请求。
             参数说明:
                method:请求的类型;GET 或 POST 
                url:文件在服务器上的位置 
                async:true(异步)或 false(同步)Asynchronous 
                send(string):将请求发送到服务器
                    参数说明:string 仅用于POST请求 
                一个简单的GET请求:
                xhr.open("GET","/Ajax02/getInfor",true)
                xhr.send();
                一个简单的POST请求:
                xhr.open("POST","/Ajax02/getInfor",true)
                xhr.send();
              如果需要像HTML表单那样POST数据,请使用setRequestHeader()来添加HTTP头然后在 send() 方法中规定您希望发送的数据:
                xhr.open("POST","/jQueryAjax/postPersonInfor",true);
                xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
                xhr.send(data);                
setRequestHeader语法:
                setRequestHeader(header,value):向请求添加HTTP头。
              参数说明:
                header: 规定头的名称 
                value: 规定头的值
        4.AJAX 服务器响应
                使用XMLHttpRequest对象的responseText或responseXML属性获取来自服务器的响应
                responseText:获得字符串形式的响应数据。
                responseXML:获得 XML 形式的响应数据。
        5.AJAX onreadystatechange事件
                在XMLHttpRequest对象中,readyState属性存有XMLHttpRequest的状态信息,
                每当readyState改变时,就会触发onreadystatechange事件。
               下面是XMLHttpRequest对象的三个重要属性:
                onreadystatechange:存储函数(或函数名),每当readyState属性改变时,就会调用该函数。
                readyState:存有XMLHttpRequest的状态。从0到4发生变化。
                    0: 请求未初始化 
                    1: 服务器连接已建立 
                    2: 请求已接收 
                    3: 请求处理中 
                    4: 请求已完成,且响应已就绪 
                    status: 200: "OK"  404: 未找到页面
               在onreadystatechange事件中,我们规定当服务器响应已做好被处理的准备时所执行的任务。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我! 毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip
综合小区管理系统管理系统按照操作主体分为管理员和用户。管理员的功能包括报修管理、车位管理、车位分配管理、出入管理、字典管理、房屋管理、物业费缴纳管理、公告管理、物业人员投诉管理、我的私信管理、物业人员管理、用户管理、管理员管理。用户的功能包括管理部门以及部门岗位信息,管理招聘信息,培训信息,薪资信息等。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。 综合小区管理系统管理系统可以提高综合小区管理系统信息管理问题的解决效率,优化综合小区管理系统信息处理流程,保证综合小区管理系统信息数据的安全,它是一个非常可靠,非常安全的应用程序。 管理员权限操作的功能包括管理公告,管理综合小区管理系统信息,包括出入管理,报修管理,报修管理,物业费缴纳等,可以管理操作员。 出入管理界面,管理员在出入管理界面中可以对界面中显示,可以对招聘信息的招聘状态进行查看,可以添加新的招聘信息等。报修管理界面,管理员在报修管理界面中查看奖罚种类信息,奖罚描述信息,新增奖惩信息等。车位管理界面,管理员在车位管理界面中新增。公告管理界面,管理员在公告管理界面查看公告的工作状态,可以对公告的数据进行导出,可以添加新公告的信息,可以编辑公告信息,删除公告信息。
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值