我无法捕捉 fs.createReadStream() 的 ENOENT。这是一个异步函数,它在不同的闭包链中引发异常吗?
$ node -v
v0.10.9
$ cat a.js
fs = require('fs')
try {
x = fs.createReadStream('foo');
} catch (e) {
console.log("Caught" );
}
$ node a.js
events.js:72
throw er; // Unhandled 'error' event
^
Error: ENOENT, open 'foo'
我期待打印“Caught”而不是错误堆栈!