lmartins
3/27/2014 - 11:50 AM

Quick Self-invokinf functions in Coffeescript

Quick Self-invokinf functions in 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.