30、js - Promise

news/2025/2/22 9:43:40/

一、Promise的3种状态:

1、作用:了解Promise对象如何关联处理函数,以及代码执行顺序

2、一个Promise对象,必然处于以下几个状态之一:

pending:初始状态,页面一旦调用Promise对象,Promise对象就会立刻处于pending状态

fulfilled:意味着操作成功完成

rejected:意味着操作失败完成

3、注意⚠️:Promise对象的状态一旦是fulfilled或者rejected,状态就无法再被改变,也就是说一旦是fulfilled状态,就无法再改为rejected状态。

    const p = new Promise((resolve, reject) => {setTimeout(() => {resolve(1);//reject(2);}, 3000);});console.log(p);p.then(data => {console.log(data);}).catch(error => {console.log("我是Promise错误", error);})

一运行js,js会马上打印p对象,如果此时3秒内立马点击控制台的Promise对象,就是处于pending状态。也就是说,页面一旦调用Promise对象,Promise对象就会立刻处于pending状态。

就算3秒后setTimeout运行完了,也依然是pending状态。

只有当3秒后setTimeout运行完了,你再点击控制台的Promise对象,才会显示对应的fulfilled或者rejected状态。

    const p = new Promise((resolve, reject) => {setTimeout(() => {resolve(3);reject(4);}, 3000);});console.log(p);p.then(data => {console.log(data);}).catch(error => {console.log("我是Promise错误", error);})

如果代码里同时写了resolve(3); reject(4); 最后只会执行resolve()方法,不会执行reject()方法。这就是Promise对象的状态一旦是fulfilled或者rejected,状态就无法再被改变。


http://www.ppmy.cn/news/275834.html

相关文章

【Docker安装部署Neo4j保姆级教程】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

PointPillar 3D目标检测模型详解

一、参考资料 pointpillars 论文 pointpillars 论文 PointPillars - gitbook_docs 使用 NVIDIA CUDA-Pointpillars 检测点云中的对象 3D点云 (Lidar)检测入门篇 - PointPillars PyTorch实现 模型部署入门教程(三):PyTorch 转 ONNX 详解 Poin…

『Nvidia Jetson AGX Xavier笔记』Xavier(arrch64架构)搭建second点云目标检测环境!

Xavier(基于arrch64架构)搭建second点云目标检测环境! 文章目录 一. 事先准备工作1.1. 安装cmake1.2. 创建second虚拟环境1.3. 安装一些依赖包 二. 安装pytorch以及spconv2.1. 安装pytorch以及torchvision2.2. 安装spconv2.3. 安装apex 三. second网络验证性能3.1.…

EVO安装与问题解决

1.安装方法 1.1 快捷安装 ,直接安装最新的稳定发行版: pip install evo --upgrade --no-binary evo1.2 源码安装 ,下载源码进行安装: 首先在任意文件夹下下载evo,也可以在home中直接下载 git clone https://github.…

关于SSD的一些日记

我的第一块SSD 2016年:SanDisk 240GB SSD Plus, SATA3.0 某东自营 在那时这个SSD算是非常新的SSD,用的技术也相当先进,而且网上好评如潮。在舍友三天两头的怂恿下我忍饥挨饿终于花400大洋买了个 回来做系统盘。 若问我有什么提升…

代码阅读 :SECOND pytorch版本

代码量很大。。。 框架 second.pytorch --------|---images|---second ----|---apex|---torchplus |---builder|---configs|---core|---data|---framework|---kittiviewer|---protos|---pytorch ------|---builder|---spconv |---core|---utils |---models|-…

传统工业制造企业如何实现数字化转型?

传统工业制造企业如何实现数字化转型,以数字驱动、实现高价值管理? 传统企业实现数字化转型是一条很漫长但不得不走的道路,看到这个问题下有很多专业人士对传统企业如何做数字化转型都提出了专业的见解,所以这篇就以传统制造业为…

详谈SSD硬盘接口: SATA、mSATA 、PCIe、M.2和U.2

SSD固态硬盘,彻底打破了温彻斯特结构的机械硬盘多年来在电脑硬件领域的统治。SSD数倍于HDD机械硬盘的传输性能,让普通用户和发烧玩家的体验均成倍提升。 在这场存储革命中,为了实现更快的速度、更多的使用环境、更好的体验,SSD的接…