Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法在javascript中生成随机数而不使用math.random()函数?_Javascript_Random - Fatal编程技术网

有没有办法在javascript中生成随机数而不使用math.random()函数?

有没有办法在javascript中生成随机数而不使用math.random()函数?,javascript,random,Javascript,Random,我试图在JavaScript中生成0到9之间的随机数,而不使用内置函数math.random()。我需要找到这个问题的解决方案。您可以将鼠标位置和时间用作随机噪声: // Expose the current mouse position let clientX = 0; window.onmousemove = e => clientX = e.clientX; // Generate random values and show them: setInterval(() =>

我试图在JavaScript中生成0到9之间的随机数,而不使用内置函数
math.random()
。我需要找到这个问题的解决方案。

您可以将鼠标位置和时间用作随机噪声:

// Expose the current mouse position
let clientX = 0;
window.onmousemove = e => clientX = e.clientX;

// Generate random values and show them:
setInterval(() => {
  document.body.textContent = (+new Date + clientX) % 10;
}, 100);

(请注意,这不够随机,无法在加密/安全相关代码中使用)

您可以搜索伪随机数生成器(PRNG)算法并自己实现一个算法。或者从random.org下载随机数据。否则,不,它几乎是
Math.random
。您为什么要避免
Math.random()
?您可以在页面加载上使用高分辨率时间戳来为自己的实现播种种子。您希望实现什么?您想创建自己的伪随机算法吗?如果您只是试图避免使用
Math.random
,也可以使用
crypto.getRandomValues
。但是,您需要转换输出。但是,为什么?你想重新发明轮子吗?