2 ms·
... not so much. A big part of the point of having a minimal function literal, `->` instead of `function(){}`, is that using anonymous functions is a bit more p
by jashkenas 15y ago
... not so much. A big part of the point of having a minimal function literal, `->` instead of `function(){}`, is that using anonymous functions is a bit more pleasant in any context -- including chaining.
list.map((num) ->
num * 2
).map((doubled) ->
doubled + 5
)
... instead of:
list.map(function(num) {
return num * 2;
}).map(function(doubled) {
return doubled + 5;
});
It's not a huge difference. But, by the same token, it's certainly not a reason to avoid the use of anonymous functions.
- MatthewPhillips 15y agoCoffeeScript is always going to be less verbose than JavaScript, but in the context of a full code file having some functions with parentheses and some without isn't a pleasant consistent experience in my book. Another thing CoffeeScript handles unelegantly is two anonymous functions (very common when a function needs an onsuccess and an onerror): api.get( -> # Success here. -> # Failure here. ) The benefit of curlies is you get a consistent experience and don't have to go to Stackoverflow to find out when you need commas or parentheses and when you don't.