00:00
好来下面呢,我们就要开始去自己去写promise,我们刚刚说过了,首先我们去写什么整体结构,那我们是不是要去定义一个啊,自己的一个promise的库,对不来我这里面呢,先建一个文件夹,点下他建一个文件夹写一个吧。一会就库的一个简写好,接着我在这里面建一个什么文件。我建一个什么类型的文件。这个H文件我要写一个promise who是不是要写一个JS文件,写一个JS模块,那我应该取什么名字比较好呢?就promise给JS呗,是不是也就是说这是我自定义的一个什么promise模块自定义。嗯。这有点卡了,关键。
01:00
函数模块,也就是我这个模块是个函数是吧?啊这个函数好,那要定一个模块,那我们是不是可以用一些模块的语法呢?比如说啊S,比如说ES6。啊,我现在都不用,为什么呢?因为我现在啊,我定义好这个文件以后,我准备去写一个写一个测试的文件,来去测试我写的这个库行不行,能听懂不?那我在审的时候是不是先得去引入我的这个库。能听到不,那我就点什么尼,下面的什么。promise.gs那我最终肯定是希望我这个里面诶不要了。那我现在是不是可以去我自己的promise是不是?能听懂吧,能,但是如果我用宽门结实的语法,用ES6的模块语法去暴露的话,去定义模块的话,那它得先编译以后才能。
02:01
运行能听懂不,所以我不能用啊ES6的模块语法。啊,当然也不能用GS,你说老师我得用什么样的模块语法呢?最基本ES5的。一五里面怎么定义模块?ES5里面怎么定义模块?赶紧,你不说我要写出来了,叫匿名函数自调用或者自调用函数表达式或者函数表达式直接用都行,用一个英文单词叫。啊来啊,没关系啊啊没关系,你说你现在不会没不会任何东西啊,都是能承受的啊,都是能承受的啊OK,因为你不会,那怎么着呢,是不是还揍你嘛,不能嘛,对不对,你要揍你,那你不得揍我啊对吧,所以还是啊咱啊和谐一点啊。
03:07
好,来来下面啊,这里面需要传一个什么,还记得可以传一个吧,Window,我现在是不是要去定义一个promise的函数,那很简单啊,那不就写一个函数吗?名字叫什么promise啊,参数我等会再写,那我这函数是不是需要暴露出去,外面是不是才能六。那如何暴露还是向外暴露谁?Promise函数对不对?太简单了点,什么promise等于什么promise?对不啊,这个是promise构造函数吧。这一个是promise构造函数,那这个时候定义的时候,你就对语法很清楚,我们接不接受参数啊,接收接收一个什么类型的参数啊。
04:08
这是一个什么类型的参数?你不要转变到定义者,你就你又搞不清楚了,你想想看你怎么用的,你六传递什么类型,它就接受什么类型呗,接收函数,那个函数我们有一个统一的名称,叫构造器吗?叫执行器,那执行器用英文呢,怎么说A开kyo。对吧,这个称为这个我们称为一个执行器函数,对不对?执行器函数,那个执行器函数是同步执行的还是异步执行的,同步啊函数啊,Promise除了构函数以外,是不是还有一些实例的方法。而实力的方法是在哪个上面的?
05:01
是不是在圆形上,圆形上有哪两个方法,我们常用任和什么,看一下是不是。也就是说有一个啊啊promise原型对象的什么方法。任何方法是吧,啊来写一下怎么写。Promise里面一些是我们功能,我们等会再说。是吧,好,这一个写什么呢?要想我们是接收什么几个参数,两个分别称为什么名称是两个回调函数吧,什么以及什么on rejected。对吧,队长。
06:02
这没问题吧,没问题,好来继续圆形上面是不是还有方法,还有什么法开启方法是吧,那开启跟这个什么。是不是差不多差不多好,既然差不多,那我们就搞一搞来差不多是首先名字叫什么catch,接着函数接收几个一个,而且是接受的什么失败的回调,所以说来一个什么。On rejected,没问题吧,原形上面就这几个。哎,我们前面分析过,还有什么语法。那是谁的号码?是不是函数对象的方法啊,这个是promise函数对象的,哎,好几个方法,有哪些方法呢?有我先说一下啊,有两个啊,比较常用的还有什么啊加来我先写一个,再复制粘贴吧,来注意promise点什么啊,是不传一个它的值是个函数吧,因为它是方法吧。
07:19
接收一个什么参数了,是不是成功的,暂时可以这么理解啊,就么懂可以吧,可以好来下面跟这个类似了。好,先写一个这个叫什么,下面一个是不是方法啊,函数对象啊的方方法是吧,写清楚点没写清楚啊好,这个是函数对象的什么方法,那这个方名就叫什么,而这个里面呢,接受的就不是了,是什么。
08:14
OK吧,OK好接着啊,Promise函数对象的什么方法,All方法是吧?All方法来一个我呗,是吧,来个我接收什么参数什么的数组。什么的速度?Promise的promise度,我取什么名字?Promise。对不对啊对好没问题,还有一个吧,它子还有一个咱常用是吧,就是那个啊方法是吧,和这个瑞方法来看一下啊,也是接收一个什么我密的速度。
09:08
这意思吧?能看到好来说一下。再来说一下它的一些重要的东西,这个函数从基本上说,首先它是指定什么东西啊,用来指定什么,指定干嘛呢?成功和什么失败的回调函数?是不?还有一个特点要写明函数的返回值为谁返回一个新的promise对象。是不是要描述这个人呢?好,这个开启呢。它是用来改什么呢?指定失败的什么毁掉函数,那它是不是同理返回一个什么新的promise对不对,这个没问题吧,好这个了。
10:11
返回一个是不是成功指令啊,成功的promise,但这个其实不完全对,等会我们后面再说,先展示这么理解啊,而且成功了只为谁value啊,Value指定啊,结果数据的返回啊,指定结果的一个啊,指定结果的成功的方面书,其实这句话现在现在看来是对的,但以后会有一点偏差,我们后面再想。啊,这个就比较固定的返回一个指定啊,Reason的什么呀。失败promise,失败的promise没题吧,没问题,而这一个也返回一个promise,返回一个新的方面,但是关键是什么?返回一个promise,但是这个成功还失败呢?是不只有下面就要描述清楚了,只有当是吧,所有promise都成功时。
11:18
是不是才成功否则了,失败否则什么意思啊。只要有一个失败的,是不是就失败了,你说有一个失败了,我还看别的吗?不看。写下来。好,没问题,下面这个也是返回一个promise,关键这个promise的结果怎么决定呢?其结果有什么?第一个。成功了吗?完成的promise来什么啊?确定是不是这个道理,如果第一个promise成功了啊,完成了promise他成功了,那就成功了,是不是他失败了,失败了看第一名是吧?简单来说就是看第一名。
12:17
没问题吧?没问题,那现在我们就是把整个给他写一下。但无论怎么着啊,你一定要有能力把这个结构给它快速的写出来啊。好。
我来说两句