wer

wer


class MyPromise  {
constructor(f) {
this._reject = null

let promise = new Promise((resolve, reject) => {
this._reject = reject
f(resolve, reject)
})

promise.cancel = () => {
this._reject('Rejected')
}

return promise
}
}

function test() {
return new MyPromise((resolve, reject) => {
setTimeout(() => {
resolve(123)
}, 1000)
})
}


let promise = test()
promise
.then(() => {
console.log(321)
})
.catch(e => {
console.log(e)
})

promise.cancel()


Report Page