JS中的async,我的四驱兄弟!我的青春

2020-03-28  本文已影响0人  羞羞的王大锤

你可能经常见到async/await这些字眼,但你知道它到底是什么?有什么用?怎么用?
今天我就带大家认识一下async函数

async 是什么?

async 是ES2017中引入的一个新函数,一句话来概括,它是Generator函数的语法🍬(高级👍),那问题来了,Generator有什么东东?如果你还不认识它,那请先看我的JS中函数后面带个*号是啥意思?这篇文章

Generator函数我们可以比作成一个手工打造的模型小车车,我们推一把(执行一次next方法),它就会走一截,推一把,走一截
而async就像是一个四驱车(四驱兄弟看过没?阿豪我的童年,唉,暴露年龄了)车上安装了马达还有电池🔋,那速度嗖嗖的

async这个名字相当于Generator函数中的*号,await相当于Generator函数中的yield ,换了个名字果然不一样(四驱车上华丽丽的的喷漆)

此外async函授中内置里执行器,可以将Generator函数的状态自动执行(四驱车上强有力的马达)

这就让async函数的执行和普通函数一模一样,爽的飞起

async 有什么用?

它可以使我们异步操作更加方便、简洁、语义化、好懂,不用像Promise中不断的嵌套then,感觉坠入了无底深渊……

async 怎么用?

我们举一个实际使用的例子,比如说我们要请求某个需要认证后才能获取的数据资源,那么我们需要先请求认证中心,获取的认证信息后,在请求真正你要想的资源,用asyn函数实现如下:

async function getData(){
  let token = await request('"认证请求地址");
  let data = await  request("/数据请求地址",{token})
}
getData()

囊,是不是很简洁,看起来和我们普通函数一样一样的~

最后 🙌

好啦,以上就是我本次分享的全部内容啦,如果你觉得我的文章对你有一丢丢帮助,那么请不要吝啬你的赞👍哦,阿门~

上一篇下一篇

猜你喜欢

热点阅读