3.3错误处理 视频里讲错了

来源:-

董曼巴

2019-08-26 11:18

3.3错误处理一节,课程里讲的不对。  计时器回到函数属于异步执行的代码,里面抛出的异常并不能被catch 捕获到。

new Promise((resolve,reject)=>{

    setTimeout(()=>{
        //此处抛出的异常是因为没有被捕获所以会在控制台被打印出来。
        throw new Error("bye");
    },2000);
    
    // throw new Error("bye2") //同步的方式执行会被promise处理成reject立即调用,可以被后面的catch捕获到
})
    .then(value=>{
        console.log(value+" world");
})
    .catch(error=>{//
        //按照课程里的代码,setTimeout里面抛出的异常在这里是捕获不到的。
})


写回答 关注

0回答

还没有人回答问题,可以看看其他问题

Promise 入门

带你入门 Promise。

31558 学习 · 42 问题

查看课程

相似问题