Sfondo: Sto cercando di convertire un codice JavaScript che usa la biblioteca Crossfilter con la libreria di visualizzazione dei dati in D3.jsCoffeeScript.Come faccio a convertire un loop/funzione JavaScript forEach a CoffeeScript
Qual è il modo migliore per convertire un JavaScript per ogni loop/funzione in CoffeeScript?
Ecco il codice JavaScript:
// A little coercion, since the CSV is untyped.
flights.forEach(function(d, i) {
d.index = i;
d.date = parseDate(d.date);
d.delay = +d.delay;
d.distance = +d.distance;
});
Può CoffeeScript fare una funzione in-line all'interno di un ciclo? In questo momento sto che ho bisogno è scoppiata in una funzione e ciclo:
coerce = (d) ->
d.index = 1
d.date = parseDate(d.date)
d.delay = +d.delay
d.distance = +d.distance
coerce(flights) for d in flights
Solo così OP sa, questo non è equivalente al codice JS. It iterà su proprietà non dichiarate, mentre un 'forEach' no. Inoltre, non crea una nuova chiusura durante ogni iterazione, quindi se ci sono gestori creati, potrebbero non comportarsi come previsto. –
ottima aggiunta, grazie – hvgotcodes