■の出現分布に偏りがある気がする
今のアルゴリズム
乱数使ってるのは一箇所
code:js
function getRandomNumber0toX(x) {
const min = 0
const max = Math.floor(x)
return Math.floor(Math.random() * (max - min)) + min
}
Math.randomは実装依存らしい
(14) JavaScriptのMath.Random()関数は本当にきちんとランダムな数を返すように出来ているのでしょうか?そうで無い場合、もっとランダム性を確保するにはどういう工夫をすれば良いでしょうか? - Quora
Crypto.getRandomValues() - Web APIs | MDN
が良いとのこと