📜  HTML DOM crypto.getRandomValues() 方法(1)

📅  最后修改于: 2023-12-03 14:41:45.741000             🧑  作者: Mango

HTML DOM crypto.getRandomValues() 方法

HTML DOM crypto.getRandomValues() 方法用于生成加密安全的随机数。

语法
crypto.getRandomValues(typedArray);
参数
  • typedArray:必需。一个Int8ArrayUint8ArrayUint8ClampedArrayInt16ArrayUint16ArrayInt32ArrayUint32Array 对象。该数组将存储随机数。
返回值

该方法不返回任何值。随机数将存储在 typedArray 中。

示例
// 生成一个包含 16 个随机字节的数组
var array = new Uint8Array(16);
window.crypto.getRandomValues(array);
console.log(array);
// 例: UInt8Array [ 190, 227, 254, 112, 197, 75, 32, 175, 57, 95, 232, 70, 9, 190, 23, 165 ]
浏览器兼容性

|属性|Chrome|Firefox (Gecko)|Edge|Internet Explorer|Opera|Safari (WebKit)| |-|-|-|-|-|-|-| |特性支持|11|21.0 (21.0)|12|11|15|7.1|

注意
  • crypto.getRandomValues() 方法只在支持 HTML5 且拥有加密随机数生成器的浏览器中可用。
  • 如果没有足够的随机数生成器,则该方法可能会抛出 QuotaExceededError 异常。
  • 请不要使用 Math.random() 方法来生成加密安全的随机数,它不安全!
  • 请注意:随机数并不相当于加密!如果您需要加密数据,请使用相应的加密算法。