Quick self-invocting functions with CoffeeScript
If you need to declare a self calling function in CoffeeScript, it's super easy, just do it:
message = "but stay safe"
do ->
message = "take chances"
alert message
alert message
# Outputs "takes chances" then "but stay safe"
This gets super useful when you need to freeze a variable, like when in a for loop and using setTimeout, just pass in the variable:
for person in group
do (person) ->
setTimeout ->
# A bunch of work using person
, 0
Without the call do (person) ->
the function called by setTimeout would only use the last person in the group.
Written by Jon Abrams
Related protips
Have a fresh tip? Share with Coderwall community!
Post
Post a tip
Best
#Coffeescript
Authors
Sponsored by #native_company# — Learn More
#native_title#
#native_desc#