标签:解决方案 异步 全局 es6 传递 add 函数 err res
let promise = new Promise(function(resolve,reject){
//do something
if(异步操作成功){
resolve(value);
}else{
reject(error);
}
});
promise.then(function(value){
//success
},function(error){
//failed
});
let add1 = function (value) {
return new Promise(function(resolve,reject){
setTimeout(resolve(value + 1),1000)
});
};
let add2 = function (value) {
return new Promise(function(resolve,reject){
setTimeout(resolve(value + 2),1000)
});
};
let add3 = function (value) {
return new Promise(function(resolve,reject){
setTimeout(resolve(value + 3),1000)
});
};
let add4 = function (value) {
return new Promise(function(resolve,reject){
setTimeout(resolve(value + 4),1000)
});
};
add1(0)
.then(function (value) {
console.log(value);
return add2(value);
})
.then(function (value) {
console.log(value);
return add3(value);
})
.then(function (value) {
console.log(value);
return add4(value);
})
.then(function (value) {
console.log(value);
})
.catch(function (error) {
console.log(error);
})
------
1
3
6
10
Promise.all([add1(0),add2(0),add3(0),add4(0)])
.then(function (value) {
console.log(value);
})
.catch(function (error) {
console.log(error);
});
------
[ 1, 2, 3, 4 ]
Promise.race([add1(0),add2(0),add3(0),add4(0)])
.then(function (value) {
console.log(value);
})
.catch(function (error) {
console.log(error);
});
------
1
标签:解决方案 异步 全局 es6 传递 add 函数 err res
原文地址:http://www.cnblogs.com/liued/p/6746159.html