なんでこういう構文にしたんだろう?
Array
とObject
をfor in
とfor of
で区別しなければならないのもアレだし、
csでfor in
したものが、jsでfor
になって、
csでfor of
したものが、jsでfor in
になるとか、
value
index
とkey
value
の順番とか、
ちょっとややこい。
for value in array
hoge
for value, index in array
hoge
for key of object
hoge
for key, value of object
hoge
吐き出すJavaScirptは
var index, key, value, _i, _j, _len, _len1;
for (_i = 0, _len = array.length; _i < _len; _i++) {
value = array[_i];
hoge;
}
for (index = _j = 0, _len1 = array.length; _j < _len1; index = ++_j) {
value = array[index];
hoge;
}
for (key in object) {
hoge;
}
for (key in object) {
value = obj[key];
hoge;
}