紳士なブログ

紳士すぎてすみません

CoffeeScriptの基礎まとめ その6

今回はループについて見ていきます。

まずは配列を題材にして。

for i in [0..3]
  alert i


JavaScriptだとこうなる。

var i, _i;

for (i = _i = 0; _i <= 3; i = ++_i) {
  alert(i);
}


次はもう少し長めのcode.

a = ["tanaka", "manaka", "monaka"]

for i in a
  alert "hi, #{i}"



これをJavaScriptだと、長々と書くことになります。

var a, i, _i, _len;

a = ["tanaka", "manaka", "monaka"];

for (_i = 0, _len = a.length; _i < _len; _i++) {
  i = a[_i];
  alert("hi, " + i);
}


indexが欲しい場合は、次のようにします。

a = ["tanaka", "manaka", "monaka"]

for i, index in a
  alert "hi, #{index}:#{i}"


次に、連想配列の場合。

sales = 
  "tanaka": 100
  "manaka": 200
  "monaka": 300

for key, value of sales
  alert "#{key}: "{value}"


これをJavaScriptで書くとなると、次のようになります。

var a, i, _i, _len;

a = ["tanaka", "manaka", "monaka"];

for (_i = 0, _len = a.length; _i < _len; _i++) {
  i = a[_i];
  alert("hi, " + i);
}