00:00
好,下面再看一个。这个后面就没什么难度了,其实这个是一些有一些概念,到时候大家看懂啊,就是promise如何串联多个。啊,操作任务其实非常简单,就是promise,它不有一个什么,是不是连续的可以解任。当然这个串联多个任务,这个任务有可能是同步的,也可能是什么呢,异步的。能听懂吧,啊来,首先我另一个promise,我另一个promise,那这个内部是不是就可以执行义务代码,当然我就不执行异步,我执行同步行不行,这也可以,是不是也没有任何问题,我执行完同步任务之后再去调或者价格也是可以的,异步都能做,那宠物更能做。
01:02
是不是概念好,那我们先一般会去执行,假设执行一个一不对吧。衣服的模拟就是用set out来模拟一下啊。那这里面呢,我们来去写一个打印输出啊,写一个打印输出,这个是执行异步任务一。可以吧,执行任务一吧,说明一下这个任务是一个什么,是不一不的。能看到吧,啊,过了一秒以后是不是才成功。我是不是调用这些肉传了一个值是吧?那但是我的点任指定回调函数是不是立即就指定了,但是我这个回调函数是不是要等到一秒之后才有可能执行这个概念吧,是这个概念,那好了,那我们是不是可以在这里面继续执行同步任务或者异步任务?好,我这里来执行一个同步任务,执行同步任务直接可以写个打印输出就行啊,就是执行同步啊,执行任务啊,但是它是个什么呢?同步的。
02:10
你写这个打印输出就可以代表这个意思了。你可以写些负循环,写些呃外循环去去不断处理也行,对不对,这没关系的。但是你得处理完了以后是不是才有结果。那最后我可以给他调一下什么呢。调用一下是不是。把这个失败的不用管它啊去掉。哎,其实刚才有一个那个失败的也要跟大家说一说的,等会再说啊,来看好了。好了,那这个时候呢,假设我原先啊,传入一个啊可以吧,可以好,那接着啊,接着我这边我的下一个。下一个呢,在这一个回调函数里面执行,说明我上一个是不是已经成功了,那但是呢,我可以在这里面啊来啊执行。
03:01
这里面再写一个打印,嗯,这个是呃,任务一的结果。为多少啊,是不是660。这个Y9是不是E任务一给我的,我得到一个结果,那接着我这个打印是想说我去执行什么义务任务,执行任务二,但是呢,这个是个什么。同步的,等我执行完了以后,我是不是才去调用。当然这个啊,这个应该不用花太长时间,你要很长的时间应该做成什么异步的对不对?好,那我现在在这个里面来先打印一下。这应该收到,先收到了一个什么任务二的结果是不是对不结果为多少呢?是不是value?下面我要告诉大家看看,我要问大家,我现在想去启动一个异步任务驱动启动。
04:04
好,异步任务。啊,启动任务三是个异步的,你说我该怎么办?它是个E的,那E的那是不是应该有set time out好,关键我要有问题来了啊,看好了啊,我这个时候呢,假设是一个假设一线,你搞一线啊,这个时候是不是有数据了啊,有数据了我去执行,执行完一分钟执行。啊,任务三,但它是个什么呢?一步的。那也就是说啊,那我按数来说啊,最后执行我是不是就可以调用一下肉是饱,假设我一步任务成功率就会是三啊,成功率就会三,那我这边是不是收。是不是再写个点来收对吧,上面这个写法有问题啊,我先写上,那这个是谁的结果。
05:03
是不是三的结果好好了。这个写法就不太好。如果我在回调函数里面需要啊,我在回调函数里面需要去执行一个异步任务,等到我成功之后,是不是等到我成功有结果之后才去传给这个value。这个不对。也就是说,你要想在毁掉函数里面执行一个义务任务,应该封装成什么东西?应该把义务任务放到那什么里面去。Promise对象里面去啊。你这个用的注意啊,看好了,你这个调用的reserve是哪个reserve啊,是不是这个promise reserve。
06:07
是吧,看好了看好了,这个这个这个。这个里面都有点,这个里面我我成功了,其实我成功了,这个不不是调,而是应该,而是应该这里面都不对。这应该直接这个都不对。为什么呢?你看这个是谁的,是他的,他的是不是在在这个行系函数里面才能掉,我这一个应该我想说我是不是要返回一个成功的值,只需要直接围成一个什么啊,是不是就可以。是不是这个意思,而我这里呢,我这也不对。你想想看,我一个三吗?三那不是个义务任务啊,是不是我是不是啊,那我这么写一个三。
07:09
是吗?有用吗?没用,我现在是一个异步操作对不对,我一步操作得包在一个什么里面才能传下去啊,是不promise对象,哎,我们前面刚才分析了一下,如果我返回一个promise对象,这个promise的对象的结果是不是就会传给这外面。是吧,也就是说我要干嘛呀,Return一个什么新的promise有我自己的和卡对不对,是吧,接着了把这个干嘛放到把这个是不是衣操作放到这个里面。将来是不会成功。
08:01
是吗?不是你在干嘛接是啊是吧,我这一个成功的回调是不是返回了一个成功的promise,而这个成功的他不是立马成功了,对不对,他是不是过了一秒钟以后是不是才成功。那下面是不是会一直会等。是不,你光有回调函数没有结果,有用吗?没用,我们刚才说过了,如果你返回的是一个promise。那这一个promise的结果就会成为谁的结果。是不是点认返回的结果。是不是道理?那这个时候我们是不是才得到了任务上的结果为几?智围山。那如果我同步返回,是不是直接返回就行,也就是我这个同步操作直接就可以了吧。
09:00
但是如果我要做一个异步操作呢。那你得一个什么新的promise,这个里面是不是可以做一些新的一操作。那现在我是不是通过点刃将?三个任务是不是给它串联起来了,只是说第一个任务是异步的,第二个任务是什么同步的,第三个任务什么啊异步的。是这意思,不,那这样,我们来看一下我们的这个结果,注意啊,串联起来就是一个接一个的执行。先是不是执行任务一是义务的对不对?任务一最终执行完的结果是几一,接着执行什么?任务二,任务二是同步的,虽然它是同步的,但是也得等到是不是一步,任务一执行完以后,他才执行。
10:00
因为我第二个执行是以第一个执行为为条件的是吧?啊。那接着后面是不是得到任务二的结果,接着我是不是去执行什么任务三,而任务三是什么义务的,没关系,我后面他执行完了以后,我是不是才得到三。啊,这个叫啊promise用它来去干嘛了。串联多个操作任务,或者多个任务多个操作都行,有一个概念,一定要知道一个东西叫什么呢?串联。这些任务可以是同步的,也可以是什么异务的,也就同步异步都有都行,没关系对吧,没有关系。这个没问题吧,啊,这个等下去看一看,尤其是第尤其这一下啊,这很关键,同步的好理解一点。就咱刚才写的都是同步的是吧,最先写的都是同步的,直接写的返回一个结果,现在如果一旦是一的,就必须包在一个什么里面,Promise里面,因为我们说promise用来封装什么呢?异步操作。
11:14
是吧,啊,但是我这里面没有去讲,没有去整那个错误的情况啊。
我来说两句