资讯专栏INFORMATION COLUMN

javascript基础总结(二)——异步编程情况

Dionysus_go / 3068人阅读

摘要:异步规定要做一件事,不是立马执行这件事,需要等一定的时间,这样的话,我们不会等着它执行,而是继续执行下面的操作,只有将下面的事情处理完了,才会返回头处理之前的事情如果下面的事情并没有处理完成,不管之前的事情有没有到时间,都踏踏实实的给我等着

异步:规定要做一件事,不是立马执行这件事,需要等一定的时间,这样的话,我们不会等着它执行,而是继续执行下面的操作,只有将下面的事情处理完了,才会返回头处理之前的事情;如果下面的事情并没有处理完成,不管之前的事情有没有到时间,都踏踏实实的给我等着;

1、定时器都是异步编程
var n = 0;
setTimeout(function(){
    n++;
    console.log(n);//2->1
},1000)

console.log(n);//1->0
var n = 0;
setTimeout(function(){
    n++;
    console.log(n);//2->1
},0)

console.log(n);//1->0

所有的定时器都会放在任务队列池中,时间短的放在前面;

var n = 0;
setTimeout(function(){
    n++;
    console.log("1:"+n);//2:2
},2000)

setTimeout(function(){
    n++;
    console.log("2:"+n);//2:1
},1000)

console.log(n);//1->0

如果定时器时间一样会从上向下执行;

var n =0;
setTimeout(function(){
    n++;
    console.log("1:"+n);
},2000)

var timer= setInterval(function(){
    n++;
    console.log("2:"+n);
    if(n==5){
        clearInterval(timer);
    }
},1000)
//执行顺序
//2:1
//1:2
//2:3
//2:4
//2:5
2、所有的事件绑定都是异步编程

for 循环执行完成后才会走绑定事件

for(var i = 0;i < oLis[i].length;i++) {
    oLis[i].onclick = funciton() {
        changeEvent(i);//i永远是最后一个
    }
    
}
3、ajax异步读取数据时 4、通过回调函数实现异步

通过ajax和setTimeout辅助实现

//jquery中的$.get方法等...
$.get("url", function(p) {
 //some
});
//借助于setTimeout、setInterval
function f1(callback){ 
   setTimeout(function () {       
  // f1的任务代码      
  callback(); // step3     
}, 1000);   
}
f1();//setep1
console.log("x");//step2

如果该调用需要耗费很多时间,执行队列就会因等待而阻塞,采用回调函数,执行队列继续进行,等到调用结束,通过调用回调函数的方式,通知执行队列,处理执行结果.

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/82697.html

相关文章

  • 前端周报:前端面试题及答案总结JavaScript参数传递的深入理解

    摘要:前端面试题及答案总结掘金技术征文金三银四,金九银十,用来形容求职最好的几个月。因为的存在,至少在被标准化的那一刻起,就支持异步编程了。然而异步编程真正发展壮大,的流行功不可没。 showImg(https://segmentfault.com/img/bVVQOH?w=640&h=319); 1、2017前端面试题及答案总结 |掘金技术征文 金三银四,金九银十,用来形容求职最好的几个月...

    ermaoL 评论0 收藏0
  • JavaScript 异步

    摘要:从最开始的到封装后的都在试图解决异步编程过程中的问题。为了让编程更美好,我们就需要引入来降低异步编程的复杂性。写一个符合规范并可配合使用的写一个符合规范并可配合使用的理解的工作原理采用回调函数来处理异步编程。 JavaScript怎么使用循环代替(异步)递归 问题描述 在开发过程中,遇到一个需求:在系统初始化时通过http获取一个第三方服务器端的列表,第三方服务器提供了一个接口,可通过...

    tuniutech 评论0 收藏0
  • 前端排序算法总结;前端面试题2.0;JavaScript异步编程

    摘要:与异步编程按照维基百科上的解释独立于主控制流之外发生的事件就叫做异步。因为的存在,至少在被标准化的那一刻起,就支持异步编程了。然而异步编程真正发展壮大,的流行功不可没。在握手过程中,端点交换认证和密钥以建立或恢复安全会话。 1、前端 排序算法总结 排序算法可能是你学编程第一个学习的算法,还记得冒泡吗? 当然,排序和查找两类算法是面试的热门选项。如果你是一个会写快排的程序猿,面试官在比较...

    aaron 评论0 收藏0
  • 前端排序算法总结;前端面试题2.0;JavaScript异步编程

    摘要:与异步编程按照维基百科上的解释独立于主控制流之外发生的事件就叫做异步。因为的存在,至少在被标准化的那一刻起,就支持异步编程了。然而异步编程真正发展壮大,的流行功不可没。在握手过程中,端点交换认证和密钥以建立或恢复安全会话。 1、前端 排序算法总结 排序算法可能是你学编程第一个学习的算法,还记得冒泡吗? 当然,排序和查找两类算法是面试的热门选项。如果你是一个会写快排的程序猿,面试官在比较...

    ARGUS 评论0 收藏0
  • 前端排序算法总结;前端面试题2.0;JavaScript异步编程

    摘要:与异步编程按照维基百科上的解释独立于主控制流之外发生的事件就叫做异步。因为的存在,至少在被标准化的那一刻起,就支持异步编程了。然而异步编程真正发展壮大,的流行功不可没。在握手过程中,端点交换认证和密钥以建立或恢复安全会话。 1、前端 排序算法总结 排序算法可能是你学编程第一个学习的算法,还记得冒泡吗? 当然,排序和查找两类算法是面试的热门选项。如果你是一个会写快排的程序猿,面试官在比较...

    April 评论0 收藏0

发表评论

0条评论

Dionysus_go

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<