promise的三种状态

2023-11-13

三种状态(es6)

pending,fufiled,rejected

在promise种状态不可逆,时间不可倒流

promise时间有一个pending等待状态,如果实现fufiled状态,没实现rejected状态

解决了赘述问题

new promise((resolve,reject) => {
    setTimeout(()=>{]
        console.log(1)
        resolve()
    },1000)
}).then((res)=>{
    setTimeout(()=>{
        console.log(2)
    },1000)
})

 

promise.all()

let p1 = new Promise((resolve,reject)=>{
	setTimeout(()=>{
		console.log('p1')
		resolve()
	},2000)


})

let p2 = new Promise((resolve,reject)=>{
	setTimeout(()=>{
		console.log('p2')
		resolve()
	},1000)


})
let p3 = new Promise((resolve,reject)=>{
	setTimeout(()=>{
		console.log('p3')
		resolve()
	},3000)


})
Promise.all([p1,p2,p3]).then((res)=>{
	console.log('all over')
	console.log(res)
}).catch((err)=> {
	console.log('失败')
	console.log(err)
})

全部成功时候执行all.then,如果我们修改其中一个为reject()那么then不能顺利执行,一个任务执行失败不会影响下面任务继续执行

 

promise.race()

let p1 = new Promise((resolve,reject)=>{
	setTimeout(()=>{
		console.log('p1')
		resolve()
	},2000)


})

let p2 = new Promise((resolve,reject)=>{
	setTimeout(()=>{
		console.log('p2')
		resolve()
	},1000)


})
let p3 = new Promise((resolve,reject)=>{
	setTimeout(()=>{
		console.log('p3')
		resolve()
	},3000)


})
Promise.race([p1,p2,p3]).then((res)=>{
	console.log('all over')
	console.log(res)
}).catch((err)=> {
	console.log('失败')
	console.log(err)
})

//race比赛竞赛,只要有一个任务完成then立即执行,但是不会影响其他promise执行

用途:请求超时

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

promise的三种状态 的相关文章

  • 如何挑选自媒体平台进行创作?这3个关键需要把握

    应该如何挑选平台进行创作 在这里 介绍两个值得长期坚持的平台 及主要变现方式 1 头条号 阅读量变现 发布文章时 可根据阅读量获取对应广告分成 付费专栏 当账号获取图文原创收益后就能开启付费专栏 用户购买后即可获得收入 签约作者 成为平台签
  • aptitude versus apt-get

    Important UpdateApparently the new version of apt get in Edgy Eft Ubuntu 6 10 has a function that allows you to remove u
  • python作业记录1_字典运用的实例

    帮朋友做了几个作业题目 记录一下 一 某人到超市购买了以下物品 先需要对货物金额进行统计 清单如下图所示 牛奶 65 面包 15 可乐 39 饼干 45 糖果 24 水果 35 8 要求 1 使用字典保存以上数据 2 可乐的金额统计出错 请
  • GNU make 基礎知識點梳理 with tangible examples(01-st 記)

    1 作爲基礎項目的一個示例
  • Linux常见的工具有哪些?

    在Linux系统中 有很多实用的工具和软件可拿来即用 即方便又可以释放双手 节省时间 更是每个运维工程师必须掌握的技能之一 那么Linux常见的工具有哪些 具体请看下文 1 文本编辑器 Vim 一款功能强大的文本编辑器 Emacs 另一款广
  • Python工程师必看的面试问题与解答(中)

    16 在Python中什么是迭代器 在Python中 迭代器用于迭代一组元素 如列表之类的容器 17 什么是Python中的单元测试 Python中的单元测试框架称为unittest 它支持共享设置 自动化测试 测试关闭代码 将测试聚合到集
  • https单向认证和双向认证区别

    关于证书 1 每个人都可以使用一些证书生成工具为自己的https站点生成证书 比如jdk的keytool 大家称它为 自签名证书 但是自己生成的证书是不被互联网承认的 所以浏览器会报安全提示 要求你手动安装证书 只有通过权威的CA机构付费获
  • 网络协议学习笔记 二 tcpdump windump (BY 冷家锋)

    网络协议学习笔记二 作者 冷家锋 刘婷婷 时间 2008 4 3 说明 欢迎转载 无须注明出处 水平有限 译者不保证译文的正确和准确 如因看了本译文而对看官的学习有误导 与译者无关 学习网络和操作系统也有段时间了 总感觉无所进步 打算认真从
  • 请基于matlab,利用BP算法和sigmoid函数,研究反比例函数f(x)=1/x的逼近问题

    好的 我可以用中文回答你的问题 利用BP算法和sigmoid函数来逼近反比例函数f x 1 x 可以按照以下步骤进行 1 准备数据 选择一组反比例函数的数据作为训练集 比如x取1到10 y为对应的1 x值 2 创建神经网络 在Matlab中
  • Python爬虫从入门到精通:(35)CrawlSpider基础_Python涛哥

    CrawlSpider 概念 其实是Spider的一个子类 Spider是爬虫文件中爬虫类的父类 子类的功能一定是多余父类 作用 被用作于专业实现全站数据爬取 将一个页面下所有页面对应的数据进行爬取 基本使用 创建一个工程 cd 工程 创建
  • C++:前缀、中缀、后缀表达式互相转换详解

    文章目录 中缀表达式 转为 前缀表达式 波兰式 前缀表达式 逆向求解 中缀表达式 中缀表达式 转为 后缀表达式 逆波兰式 后缀表达式 逆向求解 中缀表达式 图解示例 代码实现 一个中缀式到其他式子的转换方法 超级简易 相关习题 表达式 定义
  • VisualStudio C++内存泄漏的检测方法(二)

    代码 define CRTDBG MAP ALLOC include

随机推荐

  • 进度条警告!TheBrain 11落幕!超多思维导图新功能即将登陆12版

    自从文字发明以来 人类一直在努力捕捉思想 防止它消失在时间的迷雾中 1945年 瓦内瓦尔 布什 Vannevar Bush 设想了一种外部记忆 他在 大西洋月刊 上写道 人类的思维 是通过联想来运作的 手中拿着一件东西 它就会立即跳到另一件
  • d.ts文件可以注释html吗,关于TypeScript中的“ * .d.ts”

    d代表声明文件 编译TypeScript脚本时 有一个选项可以生成声明文件 扩展名为 d ts 该文件用作已编译JavaScript中组件的接口 在此过程中 编译器会剥离所有函数和方法体 并仅保留导出类型的签名 然后 当第三方开发人员从Ty
  • linux_ubuntu 连接xftp

    一 修改静态ip 打开网络配置文件 vim etc network interfaces 1 添加以下配置 注意 ubuntu 网卡名为 ens33 多数liunx系统的网卡名为eth0 可以 通过ifconfig 查看网卡名称 2 重启网
  • swift使用cocoapods导入oc三方库

    这里主要说几个关于cocoapods导入三方库需要注意的问题和我遇到的坑 1 swift语言使用cocoapods配置Podfile文件时要加上use framework 这句代码 作用是把三方库打包成静态库 具体为什么我也在研究 2 sw
  • express的使用

    Express 是一个简洁而灵活的 node js Web应用框架 提供了一系列强大特性帮助你创建各种 Web 应用 和丰富的 HTTP 工具 使用 Express 可以快速地搭建一个完整功能的网站 Express 框架核心特性 可以设置中
  • 解决Linux新安装的虚拟机没有网

    按照步骤来 每一步之后都可以检查一下 第一步 检查Vmware的网络服务是否开启 windows按win R 输入services msc 启动以下两个服务 VMware DHCP Service VMware NAT Service 第二
  • 加密算法(DES,AES,RSA,MD5,SHA1,Base64)比较和项目应用, 各种加密算法比较

    加密算法 DES AES RSA MD5 SHA1 Base64 比较和项目应用 sochishun 博客园 https www cnblogs com sochishun p 7028056 html 加密算法 DES AES RSA M
  • 必须了解的Linux网络配置

    目录 一 查看及测试网络 1 1查看网络配置 1 2测试网络连接 二 设置网络地址参数 1 临时配置 使用命令调整网络参数 2 固定设置 通过配置文件修改网络参数 2 1 1 ifconfig命令 设置网络接口参数 2 1 2route命令
  • axios技术总结(包括跨域的处理)

    1 axios与vue axios 概念 axios是一个基于 promise 的 HTTP 库 可以用在浏览器和 node js 中 理解成库 vue axios用于将axios集成到Vuejs的小型包装器 理解成插件 安装 axios
  • Flink高手之路3-Flink的入门案例

    文章目录 Flink高手之路3 Flink的入门案例 一 Flink的API 二 Flink的编程模型 三 Flink的编程步骤 四 Flink的入门案例之一 批处理DataSet的处理 1 创建一个maven项目 2 改pom文件 引入F
  • Arduino ESP32 v2 使用记录:开发环境搭建

    文章目录 目的 开发环境搭建 程序下载测试 使用VS Code进行开发 批量烧录固件到模块中 总结 目的 在之前的文章 使用Arduino开发ESP32 01 开发环境搭建 中介绍了使用Arduino开发ESP32的开发环境搭建内容 只不过
  • hashmap和hashset的区别

    HashMap 和 HashSet 都是 Java 中的数据结构 它们都使用哈希表来实现 但是 它们之间有一些重要的区别 HashMap 是一种映射 它存储键值对 key value pairs 每个键都是唯一的 而值可以重复 HashSe
  • C++ 函数

    函数是一组一起执行一个任务的语句 每个 C 程序都至少有一个函数 即主函数 main 所有简单的程序都可以定义其他额外的函数 您可以把代码划分到不同的函数中 如何划分代码到不同的函数中是由您来决定的 但在逻辑上 划分通常是根据每个函数执行一
  • Linux查看日志

    很多初级测试人员 在进行执行测试用例这个步骤时 发现bug 不能更加的准确去定位bug 在这样的情况下就可以打开Linux服务器 敲命令查看操作进行中的实时日志 当系统报错时 可以截图日志在缺陷管理系统中 开发人员就知道什么地方错了 操作步
  • Unity物体碰撞出现穿插问题/穿过问题/物体穿过场景模型

    由于问题不好描述 所以标题就比较长了 之前在做游戏时 发生角色与其他模型始终不能正常碰撞 总是会穿插 即角色穿过其他模型 其中角色有刚体和碰撞器组件 其他模型 有 碰撞器 事后发现错误在于 其他模型的碰撞器组件被加到 组 上 而非组内每个物
  • Spring框架基础知识总结

    Spring框架 1 什么是Spring Spring是分层的Java SE EE应用 full stack轻量级开源框架 以IOC Inverse Of Control 反转控制 和AOP Aspect Oriented Programm
  • 1.3.3 手写数字识别之损失函数

    文章目录 概述 分类任务的损失函数 Softmax函数 交叉熵 交叉熵的代码实现 概述 上一节我们尝试通过更复杂的模型 经典的全连接神经网络和卷积神经网络 提升手写数字识别模型训练的准确性 本节我们继续将 横纵式 教学法从横向展开 如 图1
  • Ubuntu 20.04 下安装配置 VScode 的 C/C++ 开发环境

    前言 之前安装了Ubuntu 18 04 结果在安装Codeblocks VScode还是安装gcc c c 的时候出现了一堆错误 缺失依赖树等等问题 换源也无法成功 整了一个下午没有任何进展 网上找不到任何解决方法 于是只能重装了Ubun
  • 红队

    1 MS14 068 kerberos认证 no PAC 用户在向 Kerberos 密钥分发中心 KDC 申请TGT 由票据授权服务产生的身份凭证 时 可以伪造自己的 Kerberos 票据 漏洞效果 将任意域用户提升到域管权限 利用条件
  • promise的三种状态

    三种状态 es6 pending fufiled rejected 在promise种状态不可逆 时间不可倒流 promise时间有一个pending等待状态 如果实现fufiled状态 没实现rejected状态 解决了赘述问题 new