相关疑难解决方法(0)

Math.random()何时开始重复?

我在nodejs中进行了这个简单的测试,我让它在一夜之间运行,无法重复Math.random().我意识到价值(或甚至整个序列)迟早会重复,但对它何时会发生有什么合理的期望?

let v = {};
for (let i = 0;; i++) {
  let r = Math.random();
  if (r in v) break;
  v[r] = r;
}
console.log(i);
Run Code Online (Sandbox Code Playgroud)

javascript random node.js

8
推荐指数
1
解决办法
162
查看次数

Math.random随机位数

是否有任何关于Math.random应该产生多少随机位的要求?我对Chrome和Firefox的实现进行了一些测试,将结果转换为十六进制以检查位,Firefox 27.0.1给出了类似的结果

0x1.de619579d56f3p-1
0x1.ef1ada9306decp-2
0x1.df3b75e208ce6p-1
Run Code Online (Sandbox Code Playgroud)

而Chrome版本33.0.1750.154米给出

0x1.1190f39c00000p-2
0x1.b959e3b600000p-1
0x1.90f614b400000p-2
Run Code Online (Sandbox Code Playgroud)

相比之下,这是一个神圣的.它似乎是一个32位的结果,而Firefox的值似乎使用53个随机位.

javascript random cross-browser

7
推荐指数
1
解决办法
862
查看次数

标签 统计

javascript ×2

random ×2

cross-browser ×1

node.js ×1