// executor function(resolve, reject) {...} );
const PENDING = 'pending'
const RESOLVED = 'resolved'
const REJECTED = 'rejected'
function MyPromise(executor) {
status=PENDING;
callbacks = [];
function resolve(val) {
debugger;
this.callbacks[0](val);
}
function reject(reason) {
}
executor(resolve, reject);
}
MyPromise.prototype.then = (onResolve, onReReject) => {
this.callbacks.push(onResolve)
}
var p = new MyPromise(
function (res, rej) {
debugger
console.log('1');
setTimeout(() => {
debugger
console.log('a')
res('ok')
}, 1000);
}
);
p.then((val) => {
console.log(val)
})
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。