1. 嵌套层次很深
2. 无法正常使用return和throw
3. 无法正常检索堆栈信息
4. 多个回调之间难以建立联系
第四条,难以建立联系,这儿太抽象了吧?success和error callback算不是一种联系呢?
另外,callback的变量共享、关联的业务逻辑分散在好几个function里面等,这些缺点都没有提吗?
2. 无法正常使用return和throw
3. 无法正常检索堆栈信息
4. 多个回调之间难以建立联系
第四条,难以建立联系,这儿太抽象了吧?success和error callback算不是一种联系呢?
另外,callback的变量共享、关联的业务逻辑分散在好几个function里面等,这些缺点都没有提吗?
2018-04-01
使用
new Promise(resolve => {
setTimeout(()=>{
console.log("666");
resolve("success");
},1000)
})
.then(data=>{
console.log(data);
})
不使用
setTimeout(()=>{
console.log("999");
callback("success");
},1000)
function callback(data){
console.log(data);
}
new Promise(resolve => {
setTimeout(()=>{
console.log("666");
resolve("success");
},1000)
})
.then(data=>{
console.log(data);
})
不使用
setTimeout(()=>{
console.log("999");
callback("success");
},1000)
function callback(data){
console.log(data);
}
2018-03-30
let p1 = Promise.resolve("p1 data")
let p2 = Promise.resolve("p2 data")
Promise.race([p1,p2]).then(value=>console.log(value))
let p2 = Promise.resolve("p2 data")
Promise.race([p1,p2]).then(value=>console.log(value))
2018-03-24
Promise.reject("err data").then(null,mes=>console.log(mes))
2018-03-24
Promise.resolve("data").then(data=>console.log(data))
2018-03-24
@蘇小小自,执行函数后面再加个then就能拿到了
(function(){
return new Promise()
}()).then()
(function(){
return new Promise()
}()).then()
2018-03-24
new Promise(resolve=>{
setTimeout(()=>{
console.log("hello world")
resolve("success data")
})
}).then(data=>{
console.log(data)
})
setTimeout(()=>{
console.log("hello world")
resolve("success data")
})
}).then(data=>{
console.log(data)
})
2018-03-24