TypeScriptで単純に指定した回数、forEachやmapを回す方法にちょっと躓いたので備忘録かねて。
普段はSwiftで開発をすることが多いので、指定回数forEachやmapを回すときなんかは
let count = 10
(0..<count).forEach { i in
print(i)
}
let someArray = (0..<count).map { i in
return ...
}
みたいにさっと書いたりすることがあるのだが、これをTypeScriptでやる時にちょっと困った。
調べた感じ、以下のようにすると良いみたい。
const count = 10
Array.from(Array(count).keys()).forEach(c => {
console.log(c)
})
const someArray = Array.from(Array(count).keys()).map(c => {
return ...
})
Array(count).keys() までで、 [0, 1, 2, 3, 4] のような結果が得られるが、
型がIterableIterator<number>と、array型ではないので、Array.from()でarray型にしてあげると良いらしい。
もっと良い書き方があるかもしれないがひとまずはこれで。