前端知识点分析—异步和回调

1.异步的概念任何时候,只要把一段代码包装成一个函数,并指定它在响应某个事件(定时器、鼠标点击、Ajax响应等)时执行,即在这个程序中引入了异步机制。 2.事件循环eg:js程序发出了一个Ajax请求,从服务器获取一些数据,我们在一个函数(回调函数)中设置好响应代码,然后js引擎就会通知宿主环境“当你完成网络请求,拿到了数据,请调用这个回调函数吧”。然后浏览器会设置侦听来自网络的响应,拿到想要的数...
摘要由CSDN通过智能技术生成

1.异步的概念

任何时候,只要把一段代码包装成一个函数,并指定它在响应某个事件(定时器、鼠标点击、Ajax响应等)时执行,即在这个程序中引入了异步机制。

 2.事件循环

eg:js程序发出了一个Ajax请求,从服务器获取一些数据,我们在一个函数(回调函数)中设置好响应代码,然后js引擎就会通知宿主环境“当你完成网络请求,拿到了数据,请调用这个回调函数吧”。然后浏览器会设置侦听来自网络的响应,拿到想要的数据之后,就会把这个回调函数插入到事件循环中。

var eventLoop = [];
var event;
while(true){
  if(eventLoop.length>0){
    event = eventLoop.shift();
    try{
       event();
    }catch(err){
       reportError(err);
    }
  }
}

3.并行线程

异步是关于现在和未来的时间间隙,而并行是能同时发生的事情。

并行:进程和线程独立运行,并可能同时运行。在不同的处理器,甚至不同的计算机,多个线程能共享单个进程

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值