how to write setTimeout with params by Coffeescript

前端 未结 6 1100
轮回少年
轮回少年 2020-12-12 10:38

Please tell me how to write javascript below in coffeescript.

setTimeout(function(){
    something(param);
}, 1000);
6条回答
  •  不知归路
    2020-12-12 11:30

    I think it's a useful convention for callbacks to come as the last argument to a function. This is usually the case with the Node.js API, for instance. So with that in mind:

    delay = (ms, func) -> setTimeout func, ms
    
    delay 1000, -> something param
    

    Granted, this adds the overhead of an extra function call to every setTimeout you make; but in today's JS interpreters, the performance drawback is insignificant unless you're doing it thousands of times per second. (And what are you doing setting thousands of timeouts per second, anyway?)

    Of course, a more straightforward approach is to simply name your callback, which tends to produce more readable code anyway (jashkenas is a big fan of this idiom):

    callback = -> something param
    setTimeout callback, 1000
    

提交回复
热议问题