вы можете создать пул случайных чисел, просто запросив некоторые данные асинхронно, потому что performance.now () дает вам временную точность до микросекунд. Затем используйте время отклика в качестве соли в алгоритме рандомизации,
var randomNumbers = [];
for(var i = 0; i < 10; i++) {
setTimeout(function () {
var timeStart = performance.now();
xhttp = new XMLHttpRequest();
xhttp.open('GET', 'https://cdn.polyfill.io/v2/polyfill.min.js?rand=' + Math.random(), true);
xhttp.onload = function () {
var timeEnd = performance.now() - timeStart;
var rNumber = parseInt(timeEnd.toString().replace('.', ''));
randomNumbers.push(rNumber)
};
xhttp.send();
}, i * 10);
}
На это время будет влиять множество факторов:
Нехорошо генерировать миллионы чисел таким образом, но несколько. Может быть, конкатенировать несколько результатов, чтобы получить хорошее длинное случайное число.