我正在测试ES6承诺如何处理错误。我认为Promises永远不会抛出错误,反而他们拒绝正确的错误。
我无法理解为什么这个承诺
var request = require("request"); // popular npm library
new Promise((resolve) => {
request("http://ya.ru", (err, res, body) => {
sdcsdcsdc.sdcsdcsdc.sdcsdcsdc.sdcsdcsdc
});
})
出现错误(并破坏了我的脚本):
Promise { <pending> }
ReferenceError: sdcsdcsdc is not defined
at Request._callback (repl:1:74)
...
,但是这个
new Promise((resolve) => { sdcsdcsdc.sdcsdcsdc.sdcsdcsdc.sdcsdcsdc })
高兴地拒绝而不破坏我的剧本:
Promise { <rejected> [ReferenceError: sdcsdcsdc is not defined] }