3 ms·
If the return value is important: if (err) return void handleError(err) And in non-promise-based async JS, the return value is almost always lost/useless
by timoxley 9y ago
If the return value is important:
if (err) return void handleError(err)
And in non-promise-based async JS, the return value is almost always lost/useless anyway so `return x` has no effect, might as well repurpose `return` for short-circuiting.
- jmull 9y agoI don't think throwing void at people is generally going to make anything clearer.
- timoxley 9y agowhy
- jmull 9y agoIt’s an obscure operator. Many people are unaware of it and many of those that are have a vague notion of exactly what it does. So people reading this code may have to stop and puzzle out this little pattern. Here you can replace “ void “ with a new line and have code anyone with basic familiarity with a c-like language can read and understand intuitively.
- jimmaswell 9y agoI've never seen syntax like 'if (err) return void handleError(err)' before. If I saw that in JS I'd have to look up what it meant.