for
を使って1行でアタっらしい配列を作れる構文基本形
squares = (x * x for x in [1..5])
console.log squares # [1, 4, 9, 16, 25]
条件付き生成(when
)
evens = (x for x in [1..10] when x % 2 == 0)
console.log evens # [2, 4, 6, 8, 10]
ネスト(2次元配列など)
pairs = ([x, y] for x in [1..2] for y in [1..2])
console.log pairs
# => [[1,1], [1,2], [2,1], [2,2]]
ステップ指定(by
句)
byTwo = (x for x in [1..10] by 2)
console.log byTwo # [1, 3, 5, 7, 9]
squares = (x * x for x in [1..10])
console.log squares
console.log "task2"
divByThree = (y for y in [1..20] by 3)
console.log divByThree
console.log "task4"
odd = (z for z in [1..10] by 2)
console.log odd