2016-01-06 184 views
1

您能否幫我解決我的問題。我已經使用了javaScript window.crypto.getRandomvalues函數可以在所有瀏覽器中使用Safari Safari瀏覽器和Safari瀏覽器5.1.7版本。請找到我的代碼javaScript window.crypto.getRandomvalues在Safari瀏覽器中無法正常工作

if ("crypto" in window && "getRandomValues" in crypto) 
      rand = crypto.getRandomValues(new Uint8Array(1))[0] % 16|0; 
     else rand = Math.random() * 16 | 0; 
     return hexs[i === 19 ? rand & 0x3 | 0x8 : rand]; 
    }) 

請找到屏幕截圖。這是我的錯誤: [截圖] [1]基於該documentation herehttp://i.stack.imgur.com/Z1aYk.png

回答

1

The array given as the parameter is filled with random numbers.

這並不意味着它返回填充有隨機數的陣列。 因此,更改您的代碼是這樣的:

if ("crypto" in window && "getRandomValues" in crypto){ 
    var arr = new Uint8Array(1); 
    crypto.getRandomValues(arr) 
    rand = arr[0] % 16|0; 
} 
+0

謝謝rahman它工作正常 –

相關問題