こんばんは!
再びSpiderとSwiftの相似点についてです。
Spiderのfor構文では、Swiftと同じ
for-inの形で書くことが出来ます。
Swiftだと
Swiftだと、こう書けますね。
let foods:[String] = ["apple", "fish", "meat"]
for food in foods {
println(food)
}
// "apple"
// "fish"
// "meat"
Spiderだと
Spiderだと、こう書けます。
var foods = ["apple", "fish", "meat"]
for food in foods {
console.log(food)
}
// "apple"
// "fish"
// "meat"
全く同じですねー
ちなみにindexの取得方法は以下のようにできます。
for food, i in foods {
console.log("I like \(foods[i]).");
};
// "apple"
// "fish"
// "meat"
また、オブジェクトについても、ofを使って
key, valueに分解することが出来ます。
var man:[String] = {
"name" : "ken" ,
"age" : 18,
"address" : "Japan"
};
for key, value of man {
console.log("\(key) : \(valu).");
}
// "name : ken"
// "age : 18"
// "address : Japan"
ワンライナーでループをまわして
配列にすることもできます。
var lists = [ 1, 2, 3, 5, 6, 7, 8, 9, 10 ];
var doubles = [ value * 2 for value in lists ];
追記
Spiderの「for-in」は、
javascriptの「forEach」にコンパイルされます。
foods.forEach(function (food) {
console.log(food);
}, this);