Promise介绍与使用简单案例

本文介绍了Promise的概念、创建方法以及如何绑定回调函数。详细讲解了Promise对象的两种方法和静态方法Promise.resolve、Promise.reject。同时,阐述了Promise.prototype.then、Promise.prototype.catch和Promise.prototype.finally的用法。
摘要由CSDN通过智能技术生成

promise介绍

  1. 概念

    1   一个异步操作的对象(一切面向对象)
    2 数据请求pending 进行中      fulfilled   请求成功     rejected 请求失败 
    
  2. 创建

    	const myPromise = new Promise((resolve, reject) =>{
    		if (success) {
    			resolve(value)
    		} else {
    		 	reject(error)
    		}
    	})
    
    说明: resolve表示请求成功后的回调函数  reject表示请求失败后的回调函数
    
  3. 绑定回调函数

    	myPromise.then(function(res){
    		// success
    	},function(error){
    		//failure
    	})
    
  4. promise对象方法一

    	Promise.all(iterable)
    	
    	iterable 可迭代对象 
    
    	返回值为一个Promise实例对象
    	iterable中存在非promise对象则会自动转换为promise对象
    
    	var p1 = Promise.resolve(3)  //请求成功后传入的参数为3
    	var p2 = 4
    	var p3 = new Promise((resolve,reject) =>{
    		setTimeout(resolve,1000,5)
    	})		
    	//使用 
    	Promise.all([p1,p2,p3]).then(res = >{
    		console.log(res)   
    	})
    	//[3,4,5]
    		
    	说明 :传入的promise对象中有一个返回失败,promise.all立马返回失败,且返回值为第一个值中的错误值
    
  5. Promise对象方法二

    	Promise.race(iterable)
    	race 比赛的意思。可迭代的对象中谁最先执行完成那么,Promise.race的返回值就是那个最先完成的对象
    
  6. Promise.resolve(value)

       返回一个promise对象,且状态成功后执行的回调函数,值为resolve传递的value
    
  7. Promise.reject(value)

       返回一个promise对象,且状态失败后执行的回调函数,值为eject传递的value
    

8.Promise.prototype.then()

	状态从pending改变后执行

Promise.prototype. catch()

状态从pending进入失败后执行

Promise.prototype. finally()

	最终结束之前执行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值