我开始打印 1000 个 1 到 100 之间的随机数,然后对所有 1000 个数字进行排序。
这里发生了一些错误。
如何使用 Math.random() 来实现它?
<script type="text/javascript" language="Javascript">
function pick(n, min, max) {
var values = [],
i = max;
while (i >= min)
values.push(i--);
var results = [];
var maxIndex = max;
for (i = 1; i <= n; i++) {
maxIndex--;
var index = Math.floor(maxIndex * Math.random());
results.push(values[index]);
values[index] = values[maxIndex];
}
return results;
}
function go() {
var running = true;
do {
if (!confirm(pick(1000, 1, 100).sort(function(a, b) {
return a - b;
}))) {
running = false;
}
} while (running)
}
</script>
</head>
<body>
<h1>100 random number between 1 and 100</h1>
<p><button onclick="go()">Click me</button> to start generating numbers.</p>
<p>When the numbers appear, click OK to generate another set, or Cancel to stop.</p>
</body>
最佳答案
如果您真的只想生成 1000 个随机数,然后对它们进行排序,那么以下内容就足够了:
function pick(n, min, max) {
var results = [];
for (i = 1; i <= n; i++) {
var value = Math.floor(Math.random() * max + min);
results.push(value);
}
return results;
}
function go() {
var running = true;
do {
if (!confirm(pick(1000, 1, 100).sort(function (a, b) {
return a - b;
}))) {
running = false;
}
} while (running)
}
关于javascript - 生成并排序 Javascript 随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26961739/