目前,JavaScript的编程元素相比一些主流的编程语言比如C#和Java还是不算多,但是应用它的语法糖很多,如果不熟悉这些语法糖,很多的代码将难以阅读与理解,就比如同样是链式编程,在代码组织上,C#上就比JavaScript来得简明,也可能是个人习惯,觉得JavaScript以后容纳更多的编程元素后将更难以阅读,但它的发展还远没有到头,按现在的发展趋势,今后它有可能成为一流的、应对所有应用的最佳开发工具。
对于异步编程,就是通常我们俗称的AXAJ即Asynchronous Javascript And XML(异步JavaScript和XML),我们都认为它一种具体的编程技术,实质上,我们应该理解AXAJ为一系列的支持异步编程的方法、工具的集合(也可以说是一种思想),这个集合里面有很多的对象和方法来帮助我们用JavaScript语言实现异步编程,比如XMLHTTPRequest、JQuery里面的AXAJ、Promise、Fetch、Axios、async/await等等,Javascript语言本身是不支持异步编程的,但JavaScript的宿主浏览器支持,所以Javascript通过回调函数将需要异步处理的调用放到浏览器的事件循环队列,这样就实现了异步编程。
我们怎样使用JavaScript来实现异步编程的呢?
1、网页嵌套、定时器
1998年,我使用HTML + CGI开发一个Web应用,使用Web页面框架来实现局部刷新,程序提交数据时候将调用页面底部的响应而提交按钮所在的页面,这样只是底部显示变化数据【其他页面如有数据变化,这个页面的处理程序也一样可以处理】而整个页面不动。
使用定时器来实现异步编程在以前也用到过,类似在一个消息队列中不断加入消息检测,满足条件了就执行处理函数。
这些都太老旧了。
2、XMLHTTPRequest
XMLHttpRequest
//1、创建Ajax对象
let xhr=new XMLHttpRequest();
//2、设置请求信息
//xhr=open(请求方式,请求地址,是否异步)
xhr.open('Post','http://127.0.0.1/ES6_Base/ASD.php',true);
//3、配置请求完成事件
xhr.setRequestHeader('content-type','application/x-www-form-urlencoded')
xhr.onreadystatechange=function(){
if(xhr.readyState===4){
if(xhr.status>=200 && xhr.status
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?