Pergunta simples, mas estou interessado nas nuances aqui.
Estou gerando booleanos aleatórios usando o método a seguir:
const rand = Boolean(Math.round(Math.random()));
Sempre que random()
aparece, parece que sempre há uma armadilha - não é verdadeiramente aleatória, é comprometida por uma coisa ou outra, etc. Então, eu gostaria de saber:
a) A maneira acima é a melhor prática para fazer isso?
b) Estou pensando demais nas coisas?
c) Estou subestimando as coisas?
d) Existe uma maneira melhor / mais rápida / elegante de que eu não conheço?
(Também um pouco interessado se B e C são mutuamente exclusivos.)
Atualizar
Se faz alguma diferença, estou usando isso para o movimento de um personagem de IA.
math.random
deve ser suficiente. Basta usar milissegundos para sua semente.
Boolean(+Date.now()%2)
const rand = Math.random() < 0.5
é equivalente e mais simples.