【问题标题】:How to generate random numbers 0 to 26 using crypto.generateValues() [duplicate]如何使用 crypto.generateValues() 生成 0 到 26 的随机数 [重复]
【发布时间】:2021-04-14 13:18:38
【问题描述】:

如何使用 crypto.getRandomValues() 生成 0 到 26 的随机数。 帮助

var array = new Uint32Array(1);
window.crypto.getRandomValues(array);

console.log(Math.floor(array[0] * 5));

【问题讨论】:

  • 如果你想要一个介于 0 和 26 之间的数字,你可能想要使用 Math.random()...
  • 事情正在使用 crypto.getRandomValues()
  • “那个东西”是什么?..

标签: javascript typescript


【解决方案1】:

按照建议,您个人可以使用专为这些事情设计的Math.random()

let number = Math.random() * 26

但在数学方面,您可以使用模块类 N+1 获得一个介于 0 和 N 之间的数字,例如:

let number = yourFunctionThatUsesCrypto() % 27 // [0,26]
let number = yourFunctionThatUsesCrypto() % 26 // [0,26)

否则,正如 @Mr. 所建议的那样。 Polywhirl 你可以scale the number between 0,1 (normalize) 然后乘以你想要的限制(在本例中为 26)

【讨论】:

    猜你喜欢
    • 2012-11-21
    • 2017-05-28
    • 2017-10-22
    • 2014-10-17
    • 1970-01-01
    • 1970-01-01
    • 2023-01-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多