JavaScriptのforEachループ/関数をCoffeeScriptに変換するにはどうすればいいですか?質問する

JavaScriptのforEachループ/関数をCoffeeScriptに変換するにはどうすればいいですか?質問する

背景: 私はJavaScriptコードを変換しようとしていますクロスフィルター図書館D3.jsデータ視覚化ライブラリコーヒースクリプト

JavaScript の forEach ループ/関数を CoffeeScript に変換する最適な方法は何ですか?

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;
});

CoffeeScript はループ内でインライン関数を実行できますか? 現時点では、関数とループに分割する必要があると思います。

coerce = (d) ->
     d.index    = 1
     d.date     = parseDate(d.date)
     d.delay    = +d.delay
     d.distance = +d.distance

coerce(flights) for d in flights

ベストアンサー1

使う理解

for d, i in flights
  console.log d, i

上記のコードは次のように翻訳されます

var d, i, _i, _len;

for (i = _i = 0, _len = flights.length; _i < _len; i = ++_i) {
  d = flights[i];
  console.log(d, i);
}

そうすれば、あなたが望むものが見えdi実現できるようになります。

ここへいくつかの例については、「forEach」を検索してください。

最後に、さらに役立つ情報については最初のコメントをご覧ください。

おすすめ記事