简单说说 这个东西,全靠自我理解,助消化用的,说的不对,欢迎批评,清喷菜鸡。
async await 想明白是干啥得,首先要懂得个概念,什么是“异步操作”,大白话就是我可以一心二用,不恰当得例子我边看书可以边吃泡面这就是异步,我吃泡面时候不能吃泡泡糖,嘴里嚼着面呢这就是同步,一样一样吃。如果你是个好奇宝宝,觉得说的不够专业跟细致,这里有一个传送门 怎样理解阻塞非阻塞与同步异步的区别? - 知乎不妨去看看,兴许能找到你想要的答案。
Javascript是单线程的,所以异步变成对于js显得蛮重要得。你想想,我只能一件事儿一件事儿得做,我不能这个没做完再做下一个,是不是很垃圾。对,就是这么垃圾。
以前,我们解决异步操作都会怎么做呢?
1.回调函数
JavaScript 语言对异步编程的实现,就是回调函数。所谓回调函数,就是把任务的第二段单独写在一个函数里面,等到重新执行这个任务的时候,就直接调用这个函数。它的英语名字 callback,直译过来就是"重新调用"。
举个例子 我去买菜做饭,首先我做饭 这个就是一个大任务一个函数,我单独把 去菜市场买菜这个操作 当成一个函数,等我买到菜了 我才可以做饭对不对?这时候 买菜就是一个回调函数。