ES6 Promise(承诺)

挂起状态 成功状态 失败状态

用来解决异步的一些问题

ajax 异步请求调用

var p = new Promise(function(resolve,refused){
console.log("abc");//abc
//resolve();
setTimeout(function(){
	resolve();
},3000)//定时器
console.log("123");
});
p.then(function(){
	console.log("dfe")//用resolve()执行
	});

setTimeout(function(){
	console.log(1);
	setTimeout(function(){
		console.log(2)
		setTimeout(function(){
			console.log(3);
		},3000)
	},2000)
},1000);

var p1=new Promise(function(resolve,refused){
	setTimeout(function(){
		resolve()
	},1000);
});
p1.then(function(){
	console.log(1);
		/*return new Promise(function(resolve,refused){
			setTimeout(function(){
				resolve();
			},2000);
		});*/
	return sleep(2000);
	
}).then(function(){
	console.log(2);
	return new Promise(function(resolve,refused){
			setTimeout(function(){
				resolve();
			},3000);
	});
return sleep(3000);
}).then(function(){
	console.log(3);
});


function sleep(times){
	return new Promise(function(resolve,refused){
			setTimeout(function(){
				resolve();
			},2000);
		});
}

var pp=new Promise(function(resolve,refused){
	//resolve()
	refused();
});

成功

pp.then(function(){
	console.log("dddfff")
})

失败

pp.catch(function(){
	console.log("llll")
})
posted @ 2017-07-18 22:03  师妹儿  阅读(54)  评论(0)    收藏  举报