ES6 语法详解(Promise对象(重点))
2021/8/16 23:08:18
本文主要是介绍ES6 语法详解(Promise对象(重点)),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script type="text/javascript"> /** * Promise对象 * 1. 理解: * Promise对象; 代表了未来某个将要发生的事件(通常是一个异步操作) * 有了Promise对象,可以将异步操作以同步的流程表达出来,避免了层层嵌套的回调函数(俗称'回调地狱') * ES6的Promise是一个构造函数,用来生成Promise实例 * 2. 使用Promise的基本步骤(2步) */ // 1: 创建Promise对象 /* let promise = new Promise((resolve, reject) => { // 初始化Promise状态为pending // 2:执行异步操作 // ajax xxx query // 如果执行成功 if(true){ resolve('执行成功') //修改Promise的转台为fullfilled }else{ reject('执行失败') // 修改Promise的转台为rejected } }) */ // 2: 调用Promise的then() /* then 第一个函数是成功返回的时候执行 第二个函数是失败返回的时候执行 catch 异常的时候执行 promise.then(res => { console.log(res) },err => { console.log(err) }).catch(err => { console.log(err) }) */ /** * promise 对象的三种状态 * pending: 初始化状态 * fullfilled: 成功状态 * rejected: 失败状态 */ /** * 应用: * 使用Promise实现超时处理 * * 使用Promise封装处理Ajax请求 */ /* let request = new XMLHttpRequest() reject.onreadystatechange = function(){} request.responseType = 'json' request.open('GET', 'http://www.baidu.com') request.send() */ // 上面的代码 不可以执行 只做参考 let promise = new Promise((resolve, reject) => { // 使用定时器模拟异步操作 setTimeout(() => { console.log("send ajax!") let flag = true; if (flag) { resolve("执行成功!") } else { reject("执行失败") } }, 1000) }) promise.then(res => { console.log('第一个函数:',res) },err => { console.log('第二个函数:',err) }).catch(error => { console.log("服务器开小差了!") }) </script> </html>
作者:彼岸舞
时间:2021\08\16
内容关于:前端知识库
本文属于作者原创,未经允许,禁止转发
这篇关于ES6 语法详解(Promise对象(重点))的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-02springboot项目无法注册到nacos-icode9专业技术文章分享
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)