Coffeescript, wie würde ich schreibe dieses Beispiel Warteschlange Funktionen, vor allem das Looping?
-
26-09-2019 - |
Frage
Ich versuche, einige Beispiele unter meinem Gürtel zu bekommen, wie man etwas anders in Coffeescript JavaScript tun würde. In diesem Beispiel der Warteschlangen Funktionen Ich bin verwirrt, wie Sie diese in Coffeescript tun Griff würden
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())();
}
Vor allem wie würde ich umschreiben dies in Coffeescript?
while (Array.length > 0) {
(Array.shift())();
Lösung
f1 = (completeCallback) ->
console.log('Waiting...')
completeCallback()
funcs = [ f1, f2, f3 ]
next = ->
if funcs.length > 0
k = funcs.shift()
k(next)
next()
Andere Tipps
fun1 = -> alert 'Hello Fun1'
fun2 = -> alert 'Hello Fun2'
funqueue = [fun1, fun2]
el() for el in funqueue
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow