Blame view

node_modules/math-random/browser.js 503 Bytes
aaac7fed   liuqimichale   add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  module.exports = (function (global) {
    var uint32 = 'Uint32Array' in global
    var crypto = global.crypto || global.msCrypto
    var rando = crypto && typeof crypto.getRandomValues === 'function'
    var good = uint32 && crypto && rando
    if (!good) return Math.random
  
    var arr = new Uint32Array(1)
    var max = Math.pow(2, 32)
    function random () {
      crypto.getRandomValues(arr)
      return arr[0] / max
    }
  
    random.cryptographic = true
    return random
  })(typeof self !== 'undefined' ? self : window)