这里是 Node.js 新手。我正在通过 NodeSchool.io 上的教程学习 Node.js ,在我们学习模块的一个教程中,我们被要求编写如下代码:
// Some code...
function filteredLs(dir, ext, callback) {
fs.readdir(dir, function(err, files) {
if (err)
return callback(err); // return statement necessary here...
callback(null, withExtension(files, ext)); // ...but not here
})
}
module.exports = filteredLs;
我的问题是,在这样的示例中,为什么在处理错误时需要包含 return
语句,但当它为 null 时可以省略?无论如何,我不明白函数的返回值对 readdir 有何用处,因为它是在完成工作后发生的。为什么会有所不同?
最佳答案
调用回调函数时使用return
通常是为了防止后面的代码运行。返回的值通常是不相关的。
这就是为什么在错误情况下需要它,因此也不会调用非错误情况的回调
调用。
在非错误情况下不需要它,因为它已经是函数的最后一行。
关于javascript - Node.js:为什么在错误处理期间应该返回回调结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34560394/