According to this node style guide, giving closures a name is a good practice:
Right
req.on('end', function onEnd() { console.log('winning'); });Wrong
req.on('end', function() { console.log('losing'); });
However, I’m used to thinking of the
function someName() { someStatements(); }
…syntax as something that creates a global variable, someName or window.someName for that function. Is this really a good practice, or is that a very bad style guide?
In node.js, what you describe does not pollute the global context.
Given:
global.someNamewill be defined. The following however:Will not set
global.someName.It seems to be just a matter of aesthetics. I tested this with node.js v0.8.4, but the same behaviour should be present in most modern browsers.