resolve 用于创建一个已成功的 MyPromise实例 reject 用于创建一个已失败的 MyPromise实例 三、MyPromise.prototype.then 用于注册成功的回调函数 实现链式调用 ,并将每次回调结果传递到下一个 then 方法中 四、MyPromise.prototype.catch 用于注册失败的回调函数 实现链式调用,跨对象的 catch捕捉流程 , 以及链式调...
console.log('(5) Promise outer env') })(); }); 2.先指定回调函数, 再指定Promise 状态的 // 2.此状态下的Promise 是先指定回调函数, 再指定Promise 状态的 setTimeout(() =>{ (function() { constpromise =newPromise((resolve, reject) =>{ console.log("(1) executor 是同步回调, 执行到set...
log(data); return new Promise((resolve) => {}); }) .then((res) => { console.log(res); }); 尝试实现 这里主要拆解为几个步骤: then 函数返回新的 promise 对象(这也是可以链式调用的主要原因) 等待第一个回调函数状态发生改变后pending->full,包装第一个 then 方法返回的值为新的 Promise,传递...
*/(functionname(window) {// 定义promise中的三种状态constSTATUS_PENDING='pending'constSTATUS_FULFILLED='fulfilled'constSTATUS_REJECTED='rejected'functionPromise(excutor) {// excutor带参,同步执行resolve和reject方法,出错就用reject抛出异常// 初始化该class中的初始状态this.status=STATUS_PENDING// 定义class...
前言 理解一个东西最好的办法之一就是动手自己写,So,他(Promise)来了。废话不多说,来看如何实现。 “五岳归来不看山,黄山归来不看岳。”希望看完这篇,你...
在JavaScript 中,Promise 是一种用于处理异步操作的对象,它可以让异步代码更易于理解和管理。在本文中,我们将手写实现一个 Promise。 Promise 的基本概念 在介绍 Promise 的实现方法之前,让我们先回顾一下 Promise 的基本概念。 Promise 有三种状态: Pending(进行中):初始状态,表示 Promise 实例正在进行中。
1、promise 基本结构 1.1 状态 我们都知道promise 有三种状态 Pending Resolved Rejected 并且promise 的状态是不可逆的 1.2 参数 每一个 Promise 都有两个 函数参数,分别是 resolved 成功状态 rejected 失败状态 1.3 方法 20210110170550885.png 通过查看 Promise 我们可以发现 resolve,reject,all,race是静态方法,then,...
首先我们要知道Promise的几个特性: ☐ 一个Promise对象有三种状态:pending、fullfilld、rejected ☐ Promise对象状态一旦被改变,就不允许再被改变了 ☐ new Promise构造函数接收一个函数作为参数,该函数又有两个参数:resovle和reject,resovle和reject也都是函数 ...
首先我们先从最简单的部分开始,声明一个自己的 Promise 类MyPromise,拥有 promise 基本的 3 个状态:pending,fulfilled,rejected(默认pending),然后包含我们平时经常使用到的功能接收一个回调函数 callBack,里面有resolve,reject方法来处理结果即可 class MyPromise {static pending = 'pending'static fulfilled = 'fulfill...
1.创建时必须传入一个函数,否则会报错2.会给传入的函数设置两个回调函数3.新创建的Promise的对象状态是Pending,且成功或失败状态随着修改4.状态一旦发生改...