私は、CoffeeScript で JavaScript とは異なる方法で何かを行う方法について、いくつか例を挙げようとしています。このキュー関数の例では、CoffeeScript でこれをどのように処理するのか混乱しています。
wrapFunction = (fn, context, params) ->
return ->
fn.apply(context, params)
sayStuff = (str) ->
alert(str)
fun1 = wrapFunction(sayStuff, this, ['Hello Fun1'])
fun2 = wrapFunction(sayStuff, this, ['Hello Fun2'])
funqueue = []
funqueue.push(fun1)
funqueue.push(fun2)
while (funqueue.length > 0) {
(funqueue.shift())();
}
特に、これを CoffeeScript でどのように書き直すのでしょうか?
while (Array.length > 0) {
(Array.shift())();