在 JavaScript 中,Promise 是一种非常有用的机制,用于处理异步操作。它可以帮助我们更好地组织和控制异步代码,使其更具可读性和可维护性。在本文中,我们将手把手地实现一个简单的自定义 Promise 对象,以更好地理解其工作原理。
1. Promise 的基本结构
首先,让我们定义一个名为 MyPromise
的构造函数,它将作为我们自定义 Promise 的基本结构。它将具有以下特性:
state
:表示 Promise 的当前状态,可以是"pending"
(进行中)、"fulfilled"
(已完成)或"rejected"
(已拒绝)。value
:当 Promise 被完成时,表示最终的结果值。reason
:当 Promise 被拒绝时,表示拒绝的原因。onFulfilledCallbacks
:一个数组,用于存储当 Promise 被完成时需要调用的回调函数。onRejectedCallbacks