JavaScript中生成随机数主要有以下几种方法:
- 基础随机数生成
- 使用
Math.random()生成[0,1)范围内的浮点数 - 生成指定范围的随机整数公式:
function getRandomInt(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; }
- 安全随机数生成
- 使用
crypto.getRandomValues()生成加密安全的随机数 - 示例:
function getRandomIntSecure(min, max) { const range = max - min + 1; const randomBuffer = new Uint32Array(1); window.crypto.getRandomValues(randomBuffer); return min + (randomBuffer[0] % range); }
- 特殊场景应用
- 生成不重复随机数数组
- 生成随机颜色/UUID等特殊格式数据
- 游戏开发中的随机事件处理
- 替代方案
- 使用
Date.now()时间戳作为随机源 - 自定义随机数生成算法
最佳实践建议:
- 普通场景使用
Math.random()即可 - 安全敏感场景必须使用
crypto.getRandomValues() - 避免使用
Math.round()处理随机范围,可能造成分布不均
参考:百度AI
>>生成-1到1之间的随机小数:
浙公网安备 33010602011771号