当前位置: 首页 > news >正文

promise

promise 属于事件循环的微任务,具体详见:事件循环

Promise 语法:

const p1 = new  Promise((reslove,reject)=>{console.log(2);reslove(1)
}).then((data)=>{console.log(3);console.log(data)
}).catch((data)=>{console.log(3);
})

promise.then(() => {return Promise.resolve(2);
}).then((n) => {console.log(n)
});
  • pending: 在过程中
  • fulfilled: 已经解决了
  • rejected:被拒绝了,失败了 

不执行 resolve() 和 reject() ,promise 状态一直是 pending 状态

Promise.resolve() 返回 fulfilled 状态的 promise => then()

Promise.reject() 返回 rejected 状态的 promise => catch()

状态一经生成,不会改变;

resolve() 和reject() 里的参数就是对于 then 和 catch 里的参数;then() 和catch() 只要没有报错,返回的都是fulfilled 状态的promise

题目一:

var promise = new Promise(function(resolve, reject){setTimeout(function() {resolve(1);}, 3000)
});
promise.then((data) => {console.log(data, "data")return Promise.resolve(2);
}).then((n) => {console.log(n)
});

 

题目二:

var promise = new Promise(function(resolve, reject){setTimeout(function() {resolve(1);}, 3000)
});
promise.then((data) => {console.log("data",data)return 2
}).then((n) => {console.log(n)
});

 return的值将作为 then 方法返回的 promise 的 resolve 的值传递出,console将打印出2

http://www.lryc.cn/news/142268.html

相关文章:

  • 前端面试:【网络协议与性能优化】HTTP/HTTPS、TCP/IP和WebSocket
  • 设计模式之工厂模式(万字长文)
  • CNN 02(CNN原理)
  • Android View动画整理
  • 阿里云架构
  • 【C语言】操作符大全(保姆级介绍)
  • ruoyi-cloud部署
  • Vue3(开发h5适配)
  • 图的存储:邻接矩阵法
  • 如何优雅的使用Git?
  • 【【STM32分析IO该设置什么模式的问题】】
  • 飞天使-k8s基础组件分析-服务与ingress
  • Unity——拖尾特效
  • java开发之fastjson
  • 第一个C语言程序:HelloWorld
  • golang 使用 viper 加载配置文件 自动反序列化到结构
  • C#设计模式六大原则之--接口隔离原则
  • 【面试题】:axios二次封装都进行了哪些配置以及如果项目里面有两个baseURL你怎么解决?
  • 谈谈对 GMP 的简单认识
  • Java正则表达式系列--从字符串中提取字符串或数字
  • 机器学习实战之模型的解释性:Scikit-Learn的SHAP和LIME库
  • Go 语言进阶与依赖管理 | 青训营
  • hyperf 十三 视图
  • 请你说说前端图形图像的框架
  • C++数据结构学习——栈
  • 【C++笔记】C++之类与对象(下)
  • 管理类联考——英语——实战篇——大作文——图表——动态图表——整体效果
  • threejs纹理加载三(视频加载)
  • VUE笔记(三)vue的语法
  • 探讨uniapp的路由与页面生命周期问题