Promise对象

1、含义
Promise是异步编程的一种解决方案,比传统的解决方案--回调函数和事件--更加合理,解决了回调地狱的的问题(promise已经写进ES6语言标准中,js原生提供了Promise对象)
2、对象状态不受外界影响,只要状态改变就不会再次改变,共有三种状态(pending--进行中,fulfilled--已成功,rejected--已失败),
状态只会pending--fulfilled或者pending--rejected其中的一种,状态一旦变化,不会更改
3、promise的缺点
promise一旦新建就会立即执行,无法中途取消,第二如不设置回调函数,Promise内部抛出的错误,不会反应到外部,当处于pending状态时,无法得知目前进展到哪一阶段。
2、基本用法
a、Promise对象其实是一个构造函数,用来生成Promise实例

// new Promise 实例
function timeout(time){
  return new Promise((resolve, reject)=>{
    setTimeout(resolve, time, "over");
  })   
  
}
timeout(1000).then((value)=>{
  console.log(value);
});
// 注意:setTimeout(function, time, param1, param2...)的参数,1、(function)延时执行的操作(function)。
// 2、延时的时间(time)。
// 3、param1、param2...这是function的参数,但是在timeout函数中的setTimeout中resovle只返回第一个param1 

来源自http://es6.ruanyifeng.com/#docs/promise#Promise-try
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容