javascript – Math.random会重复吗?

对于Math.random的不同 JavaScript实现:

抛开记忆和长度问题,以下最终会有一个永远重复的数字序列(例如,它只取决于内部种子,当种子回到它的起始点时,数字会重复)?

sequence = Math.random();
while(true){
    sequence += ', ' + Math.random();
}

每个客户端是否具有相同的重复序列(例如,客户端不将特定于客户端的数据合并到随机数生成过程中)?

我问,因为如果可能的数字序列是有限的子集,像generating UUIDs with Math.random这样的东西将有更大的碰撞机会.

从阅读 MDN

Note: Math.random() does not provide cryptographically secure random numbers. Do not use them for anything related to security. Use the Web Crypto API instead, and more precisely the window.crypto.getRandomValues() method.

我认为,碰撞最终是可能的.

相关文章
相关标签/搜索