【问题标题】:Generating pseudoRandom number less than 7 in javascript在javascript中生成小于7的伪随机数
【发布时间】:2021-02-07 14:30:41
【问题描述】:
var x = Math.floor(Math.random() * 7);
var y = Math.floor((Math.random() * 6) + 1);

哪一个是正确的,为什么??

【问题讨论】:

  • 为什么不试试呢?
  • 取决于您是否希望0成为可以返回的数字
  • 我试过了,但我看不出有什么不同。
  • 实际上第一个更有意义,那是因为您正在应用 Math.random() 并立即将其乘以每 7,另一个公式将加 1 加到已经随机化的值上,不,它根本不是随机的.
  • @AdriSolid:所做的只是改变最终数字。它不会改变整体随机性。

标签: javascript random numbers


【解决方案1】:

var x = Math.floor(Math.random() * 6);

因为 Math.random() 返回一个介于 0(包括)和 1(不包括)之间的随机数:

描述:https://www.w3schools.com/js/js_random.asp

【讨论】:

  • 使用Math.floor(Math.random() * 6),将永远不会生成号码6。
猜你喜欢
  • 2015-08-07
  • 1970-01-01
  • 2011-11-03
  • 2014-06-30
  • 1970-01-01
  • 2018-03-20
  • 2011-09-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多