首页
学习
活动
专区
圈层
工具
发布

手写一个Promise Class版本及Promise的api使用方法

() then() 方法返回一个 Promise。...如果 then 中的回调函数: 返回了一个值,那么 then 返回的 Promise 将会成为接受状态,并且将返回的值作为接受状态的回调函数的参数值。...返回一个已经是接受状态的 Promise,那么 then 返回的 Promise 也会成为接受状态,并且将那个 Promise 的接受状态的回调函数的参数值作为该被返回的Promise的接受状态回调函数的参数值...返回一个已经是拒绝状态的 Promise,那么 then 返回的 Promise 也会成为拒绝状态,并且将那个 Promise 的拒绝状态的回调函数的参数值作为该被返回的Promise的拒绝状态回调函数的参数值...(iterable) 方法返回一个 promise,一旦迭代器中的某个promise解决或拒绝,返回的 promise就会解决或拒绝。

64130
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Web前端】Promise的使用

    二、使用 ​​fetch()​​ API ​​fetch()​​ API 是一个现代的网络请求接口,广泛用于发起网络请求并处理响应。...它返回一个 Promise,使得异步操作的管理变得更加简单和直观。​​fetch()​​​ 通常用于获取网络资源,如 RESTful API 的数据。...在第一个 ​​.then()​​ 处理程序中,我们输出第一个数据并返回另一个 ​​fetch()​​ 请求,以发起第二个异步操作。...const promise1 = fetch('https://api.example.com/data1'); const promise2 = fetch('https://api.example.com...如果任何一个 Promise 解决失败,错误信息将被捕获并输出到控制台。 async 函数的返回值 async 函数总是返回一个 Promise,即使函数内没有显式返回值。

    96900

    await 只在 async 函数中工作

    它可以放在函数前,就像这样: async function f() { return 1; } 函数前的 “async” 意味着一件简单的事情:函数总是会返回 promise。...例如,上述代码中返回一个带有结果 1 的 resolved promise,我们可以进行测试: f().then(alert); // 1 …我们可以显式的返回一个 promise,结果相同: async...function f() { return Promise.resolve(1); } f().then(alert); // 1 因此, async 确保函数返回一个 promise,并在其中封装非...总结 函数前的 async 关键字有两个作用: 总是返回 promise。 允许在其中使用 await。...否则,就会返回值,我们可以给它分配一个值。 它们一起为编写易于读写的异步代码提供了一个很好的框架。

    2.6K10

    Fetch还是Axios——哪个更适合HTTP请求?

    在 .fetch() 方法中,我们有一个强制性参数url,它返回一个 Promise,可以使用 Response 对象来解决。 .fetch() 方法的第二个参数是选项,它是可选的。...正如我之前提到的,Promise 会返回 Response 对象,正因为如此,我们需要使用另一个方法来获取响应的主体。...作为一个现代的库,它是基于 Promise API 的。 axios 有一些优势,比如对 XSRF 的保护或取消请求。 为了能够使用 axios 库,我们必须将其安装并导入到我们的项目中。...当我们创建配置对象时,我们可以定义一堆属性,最常见的是: baseUrl params headers auth responseType 作为响应,axios 返回一个 promise,该 promise...如果出现像 404 这样的错误响应,promise 就会被拒绝并返回一个错误,所以我们需要捕获一个错误,我们可以检查它是什么类型的错误,就是这样。让我们看看代码示例。

    6.7K20

    一文掌握Axios:前后端数据交互竟如此简单

    axios 和 Promise 的关系 axios 是基于 Promise 实现的,也就是说 axios 请求返回的是一个 Promise 对象。...HTTP 请求,常见于 API 调用 返回值 提供then、catch、finally 方法 返回一个 Promise,可以直接调用这些方法 异常处理 通过catch 方法捕获 内置错误拦截器,可根据...HTTP 状态码处理不同错误 扩展性 需要手动封装,灵活性高 内置多种配置项,如请求头、超时时间、拦截器等 Promise 的使用示例 如果不使用 axios,而是手动用 fetch 或其他 API...以下是一个使用 Promise 的 HTTP 请求示例: // 使用 fetch 和 Promise function getUserData(userId) { return fetch(`https...发起请求,返回的也是一个 Promise,并通过.then() 和.catch() 来处理成功和失败的情况。

    2.1K20

    盘点JavaScript中asyncawait知识

    在函数前面的 “async” 这个单词表达了一个简单的事情:即这个函数总是返回一个 promise。其他值将自动被包装在一个 resolved 的 promise 中。...例如,下面这个函数返回一个结果为 1 的 resolved promise。...注: async 确保了函数返回一个 promise,也会将非 promise 的值包装进去。很简单,对吧?但不仅仅这些。...注: 它确保了方法的返回值是一个 promise 并且可以在方法中使用 await。 四、总结 本文基于JavaScript基础,介绍了async的使用。...函数前面的关键字 async 有两个作用:让这个函数总是返回一个 promise。允许在该函数内使用 await。 这两个关键字一起提供了一个很好的用来编写异步代码的框架,这种代码易于阅读也易于编写。

    59820
    领券