《尚硅谷Web前端Promise教程从入门到精通》系列博客_Promise API


前言

为学习axios打基础。本尚硅谷Web前端Promise教程从入门到精通系列博客内容介绍。
Promise是ES6引入的进行异步编程的新的解决方案,从语法上说它是一个构造函数,可以封装异步的任务,并且可以对结果进行处理。Promise最大的好处在于可以解决回调地狱的问题,并且在指定回调和处理错误方面更加灵活,在Web或者App项目中应用十分广泛,无论前端还是后端都可以看到Promise的身影,且是现在面试的高频题目,想进入一线大厂必须掌握Promise内部运行的原理。
尚硅谷Web前端Promise教程从入门到精通系列博客主要包含以下五部分:Promise 介绍与基本使用Promise APIPromise 关键问题Promise 自定义封装async 与await


提示:以下是本篇文章正文内容,下面案例可供参考

Promise API

1. Promise 构造函数:

Promise (excutor) {} ,它的参数为一个函数,而这个函数的形参也是函数。
(1) executor 函数: 执行器 (resolve, reject) => {}
(2) resolve 函数: 是内部定义成功时我们调用的函数,注意是“调用”不是“回调的函数”。
(3) reject 函数: 是内部定义失败时我们调用的函数
说明: executor 会在 Promise 内部立即同步调用,异步操作在执行器中执行。
什么是同步调用?如下面代码和图所示,就是接着执行,代码执行完毕顺序,与编写顺序相同。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Promise API</title>
</head>
<body>
    <script>
        //
        let p = new Promise((resolve, reject) => {
     
     
            // ** 同步调用
            console.log(111);
            //修改 promise 对象的状态
            reject('error');
        });

        console.log(222);

        //执行 catch 方法
        p.catch(reason => {
     
     
            //console.log(reason);
        });
    </script>
</body>
</html>

在这里插入图片描述

2. Promise.prototype.then 方法

其参数为两个函数 onResolved => {} 和onRejected=> {}。
(1) onResolved 函数: 是异步操作成功的回调函数
(2) onRejected 函数: 是异步操作失败的回调函数
说明: 指定用于得到成功value的成功回调和用于得到失败reason的失败回调返回一个新的promise对象

3. Promise.prototype.catch 方法

其参数为一个函数(onRejected) => {} 。
onRejected 函数: 是异步操作失败的回调函数
示例代码如下:

<!DOCTYPE htm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值