最新回答 / 慕沐750848
第一种:throw用来抛出问题,抛出问题后,接下来会执行.then里的内容。即返回了一个promise实例,但是,在执行这个实例的过程中,会不会有错误呢?那就要用到catch来捕捉,但是因为是异步的,系统认为我返回了一个结果(有还是没有错误,错误在哪),所有的事都做完了。 第二种:那么如何来让系统真正的执行所有的事呢,那要在实例中再抛出一个问题,这时系统会跳过then,直接执行catch。
2018-07-13
最赞回答 / 三只松鼠
楼上已经回答了,我也说一下关于 throw new Error('error')的看法:如果不是放在定时器里面,后面的catch可以捕获到; 2.如果放在定时器里面(又或者跟之前的课程一样放在一个立即执行函数里面),后面的catch就捕获不到了,不过全局window.onerror可以捕获到。综上,本质是函数是否进入同一个执行栈,从而影响后续的捕获。
2018-03-11
已采纳回答 / 十指狂魔
问问`resolve()`哪来的就像问`var`哪来的一样(ECMA API),`resole('hello')`的意思是将`hello`传递给下边的`then()`上边说过,`resolve('hello')`传递来的。`then`里的`value`就是`resolve('hello')`传递过来的`hello`@慕课网 不能使用markdown语法?
2018-03-05