你的位置:首页 > Java教程

[Java教程]js异步编程技巧一


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

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

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

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

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

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

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