-
Promise详解:
Promise是一个代理对象
她通过引入一个回调避免更多的回调
查看全部 -
Promise使用:
new Promise(
//executor 执行器
function(resolve,reject){
resolve(a); reject(b);
}
)
.then(funtion(a){
//成功
},fuction(b){
//失败
})
查看全部 -
回调函数四个问题:
嵌套层次很深
无法正常使用return 和throw
无法正常检索堆栈信息
多个回调函数之间难以建立联系
查看全部 -
Promise定义
查看全部 -
promise循环队列
查看全部 -
promise执行过程
查看全部 -
console.log("start");
let promise=new Promise(resolve=>{
setTimeout(()=>{
console.log("the promise fulfilled");
resolve("hello world");
},3000);
});
setTimeout(()=>{
promise.then(value=>{
console.log(value);
});
},1000);
//仍然排队执行 0(start)------1------2------3(the promise fulfilled,hello world)
查看全部 -
console.log("here we go");
new Promise(resolve=>{
setTimeout(()=>{
resolve("hello");
},2000);
}).then (value=>{
console.log(value);
return new Promise(resolve=>{
setTimeout(()=>{
resolve("world");
},2000);
});
}).then(value=>{ //两个then依次执行,value=上一个then的resolve的回调“world”
console.log(value+"girl");
});
//here we go
//2s后hello
//再2s后worldgirl
查看全部 -
查看全部
-
q前后两个函数不处在一个栈中所以用try...catch没有任何意义!
查看全部 -
4
查看全部 -
3
查看全部 -
2
查看全部 -
1
查看全部 -
// 4 Promise Usages
查看全部
举报