This is the convention of adding return to exit the function. An alternative would be to use if-else if-else instead of just if . In this case, you just want to exit the function and move on through the middleware chain.
You will see this pattern quite often. For example, this is pretty common:
someFunction(function(err, result) { if (err) { return console.error(err); } console.log(result); });
This is less nesting and easier to read for most poeple compared to this:
someFunction(function(err, result) { if (err) { console.error(err); } else { console.log(result); } });
The first pattern also prevents you from accidentally calling next() twice or even more times if you have some error in your if-else -logic. And this is exactly what should not happen to next() , in which case you sent. It could call next() and still call the redirect anyway.
source share