• 软件:1711
  • 资讯:45336|
  • 收录网站:98302|

IT精英团

js系列40 :异步和同步

js系列40 :异步和同步

浏览次数:
评论次数:
编辑: 阳煦
信息来源: 51CTO博客
更新日期: 2021-07-22 12:19:34
摘要

js系列四十:异步与同步,什么是异步?什么是同步?在代码中我们经常会涉及到两个不同的概念,她们就是同步与异步.同步:是指发起一个请求时,如果未得到请求结果,代码将会一直等待,直到结果出来,才会执行后面的代码.异步:是指当发起一个请求时,不会等待请求结果,而是直接继续执行后面的代码.我们可以用一个双人问答的场景来比喻异步与同步,A向B问了一个问题之后,然后就笑呵呵的等待B的回答,B回答之后A才会接着问下一个问题,这是...

  • 资讯详情

什么是异步?什么是同步?我们经常在代码中涉及两个不同的概念,它们是同步的和异步的。同步:是指发起一个请求时, 如果未得到请求结果,代码将会一直等待,直到结果出来,才会执行后面的代码.异步:是指当发起一个请求时,不会等待请求结果,而是直接继续执行后面的代码.

我们可以使用两个人的问答场景来比较异步和同步。A问了B一个问题后,他微笑着等待B的回答。B回答后,A会问下一个问题。这就是同步。A问了B一个问题后,他不等B回答,又问了下一个问题。这就是异步。

在javascript中,您还可以使用代码来表达它们之间的差异。

首先,通过promise模拟一个请求函数。函数执行后,1s后将返回值30。

函数fn(){ 0

返回新的承诺(功能(解决,拒绝){ 0

setTimeout(函数(){ 0

决心(30);

}, 1000)

})

}

基于这个函数,异步/等待语法可以用来模拟同步效果。

var foo=异步函数(){ 0

var t=wait fn();

console . log(t);

console.log('下一个代码');

}

foo();

//1s后输出

30

下一个代码

异步效果不会有同样的效果。

var foo=function(){ 0

fn()。然后(函数(resp){ 0

console . log(resp);

});

console.log('下一个代码');

}

输出结果

下一个代码

//暂停1s后输出

30

js系列37 :模板字符串
« 上一篇
返回列表
下一篇 »
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
你会是第一个来这里评论的人吗?
最近发布资讯
更多