Olá Israel, como vai? Espero que esteja bem!
A função que você implementou:
return parseInt ((Math.random() * max) + min);
está quase correta, mas pode ter um pequeno problema dependendo do intervalo que você deseja.
O método Math.random() gera um número aleatório entre 0 (inclusivo) e 1 (exclusivo). Quando você multiplica esse número por max, o intervalo se torna de 0 a max (exclusivo). Ao adicionar min, você está efetivamente deslocando esse intervalo para ser de min a max + min (exclusivo).
Por exemplo, se min for 10 e max for 20, o intervalo será de 10 a 30, em vez de 10 a 20. Além disso, o parseInt irá arredondar para baixo qualquer número decimal, o que significa que o valor máximo (neste caso, 30) nunca será alcançado.
Por outro lado, a função usada no vídeo:
return Math.floor(Math.random() * (max - min + 1) ) + min;
primeiro calcula a diferença entre max e min (ou seja, o tamanho do intervalo desejado), adiciona 1 para tornar max inclusivo, multiplica o resultado por Math.random() para obter um número aleatório dentro desse intervalo, e então adiciona min para deslocar o intervalo para começar em min. O Math.floor é usado para arredondar para baixo o número, garantindo que ele seja um número inteiro.
Então, para o seu caso, a função usada no vídeo é mais apropriada, pois ela garante que o número gerado esteja exatamente dentro do intervalo desejado.
Espero ter ajudado e bons estudos!