js异步编程小技巧详解

异步回调是js的一大特性,理解好用好这个特性可以写出很高质量的代码分享一些实际用的一些异步编程技巧。

1.我们有些应用环境是需要等待两个http请求或IO操作返回后进行后续逻辑的处理。而这种情况使用回调嵌套代码会显得很难维护,而且也没有充分使用js的异步优势。

看下实例(为了大家容易理解使用了jq作为示例)

rush:js;"> $.get("获取数据1.html",function(data,status){ $.get("获取数据2.html",function(data1,status1){ //使用 data 和data1逻辑 }); });

这种代码明显需要等待上个ajax请求返回后才会进行第二个请求,效率很低,而且回调嵌很不利于逻辑。我们可以使用计数器的方式,每完成一个请求计数器加1 当计数器等于2时执行回调逻辑

rush:js;"> var get_data var get-data1 function next(){ //使用 data 和data1逻辑 } $.get("获取数据1.html",status){ get_data=data (++over === all) && (next()); }); $.get("获取数据2.html",status1){ get_data1=data1 (++over === all) && (next());

});

这种方式两个http并行发送,极大的提高了效率

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...