ES6 Promise对象概念与用法分析
发布时间 - 2026-01-11 00:28:24 点击率:次本文实例讲述了ES6 Promise对象概念与用法。分享给大家供大家参考,具体如下:

1.Promise概念
Promise 对象有三种状态:
① Fulfilled 可以理解为成功的状态
② Rejected 可以理解为失败的状态
③ Pending 既不是 Fulfilld 也不是 Rejected 的状态,可以理解为 Promise 对象实例创建时候的初始状态
2.三个重要方法
在 Promise 对象当中有三个重要方法————resolve, reject和then。
resolve 方法可以使 Promise 对象的状态改变成成功,同时传递一个参数用于后续成功后的操作,在这个例子当中就是 Hello World!字符串。
reject 方法则是将 Promise 对象的状态改变为失败,同时将错误的信息传递到后续错误处理的操作。
function printHello (ready) {
return new Promise(function (resolve, reject) {
if (ready) {
resolve("Hello");
} else {
reject("Good bye!");
}
});
}
function printWorld () {
alert("World");
}
function printExclamation () {
alert("!");
}
printHello(true)
.then(function(message){
alert(message);
})
.then(printWorld)
.then(printExclamation); //分别弹出 Hello World !三个弹窗
上述例子通过链式调用的方式,按顺序打印出了相应的内容。then 可以使用链式调用的写法原因在于,每一次执行该方法时总是会返回一个 Promise 对象。另外,在 then onFulfilled 的函数当中的返回值,可以作为后续操作的参数,因此上面的例子也可以写成:
function printHello (ready) {
return new Promise(function (resolve, reject) {
if (ready) {
resolve("Hello");
} else {
reject("Good bye!");
}
});
}
printHello(true).then(function (message) {
return message;
}).then(function (message) {
return message + ' World';
}).then(function (message) {
return message + '!';
}).then(function (message) {
alert(message);
}); //一个弹窗 Hello World !
希望本文所述对大家ECMAScript程序设计有所帮助。
# ES6
# Promise对象
# 如何利用ES6进行Promise封装总结
# 让你彻底掌握es6 Promise的八段代码
# 深入解析ES6中的promise
# ES6关于Promise的用法详解
# ES6中Promise的使用方法实例总结
# ES6中promise详解及用法实例
# 链式
# 在这个
# 出了
# 则是
# 中有
# 给大家
# 弹出
# 可以使用
# 既不
# 所述
# 程序设计
# 有三种
# 时将
# 返回值
# 信息传递
# 改变成
# 讲述了
# Pending
# Rejected
# br
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践
奇安信“盘古石”团队突破 iOS 26.1 提权
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】
Laravel怎么调用外部API_Laravel Http Client客户端使用
Linux网络带宽限制_tc配置实践解析【教程】
html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
太平洋网站制作公司,网络用语太平洋是什么意思?
Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】
焦点电影公司作品,电影焦点结局是什么?
如何快速辨别茅台真假?关键步骤解析
HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】
米侠浏览器网页背景异常怎么办 米侠显示修复
长沙企业网站制作哪家好,长沙水业集团官方网站?
Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布
智能起名网站制作软件有哪些,制作logo的软件?
如何挑选高效建站主机与优质域名?
Laravel中间件如何使用_Laravel自定义中间件实现权限控制
香港服务器建站指南:免备案优势与SEO优化技巧全解析
如何在云服务器上快速搭建个人网站?
Python函数文档自动校验_规范解析【教程】
EditPlus中的正则表达式 实战(1)
如何在阿里云完成域名注册与建站?
Laravel如何优化应用性能?(缓存和优化命令)
简单实现Android验证码
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?
无锡营销型网站制作公司,无锡网选车牌流程?
微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】
Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】
Java垃圾回收器的方法和原理总结
百度浏览器网页无法复制文字怎么办 百度浏览器复制修复
如何用已有域名快速搭建网站?
,网页ppt怎么弄成自己的ppt?
如何确保西部建站助手FTP传输的安全性?
高性价比服务器租赁——企业级配置与24小时运维服务
如何批量查询域名的建站时间记录?
ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】
Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程
如何在Tomcat中配置并部署网站项目?
如何挑选最适合建站的高性能VPS主机?
如何在景安云服务器上绑定域名并配置虚拟主机?
如何快速查询网站的真实建站时间?
Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程
利用vue写todolist单页应用
利用JavaScript实现拖拽改变元素大小
Laravel如何配置Horizon来管理队列?(安装和使用)
Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势
Laravel如何与Pusher实现实时通信?(WebSocket示例)

