promise核心6 自定义promise
1.定义整体结构(不写实现)
定义一个自己的promise的库 lib(库的简写)
一个js文件。一个js模块(不能用es6 也不能commjs)(用es5模块语法 )
匿名函数自调用。IIFE
(function (window) { function Promise(excutor) { } //成功失败时候调用的回调函数,返回一个新的promise对象 Promise.prototype.then = function(onResoled, onRejected) {} Promise.prototype.catch = function(onRejected) {} //返回一个成功的promise,值为value(指定结果的返回) Promise.resove = function(value) {} Promise.reject = function(reason) {} //返回一个promise,所有promise都成功才成功 Promise.all = function(promises) {} //返回一个promise 结果由第一个完成的promise来确定(无论成功失败) Promise.race = function(promises) {} //向外暴露promise window.Promise = Promise })(window)
因为要写一个测试页面 其他模块化语法需要转译
2.把promise构造函数实现
3.把任何catch then 实现
4.简洁语法的实现
5.all() race()实现
6.自定义语法实现
7.es5 function版本
8.es6 class版本
本人是一个技术爱好者
1.但是每个技术爱好者都是从萌新开始的
2.我所有的博文都是我各方资料查阅(看的比较乱比较杂,因为有些是群里讨论等等来源,无法辨别出处,所以我的文章都是没有写明出处,都是我个人消化后整理,)
3.但是没有经过我实践的我一般会标注
4.希望大家共同交流共同进步,指出我的不足 谢谢

浙公网安备 33010602011771号