用js写随机生成30个80至100之间的整数打印到页面上并统计这30个随机数中重复的随机数把重复的数字和它的重复次数最终也打印到页面上
以下是JS代码实现:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>随机数生成及统计</title>
</head>
<body>
<h1>随机数生成及统计</h1>
<div id="random"></div>
<div id="result"></div>
<script>
// 生成随机数并打印到页面上
var randomNums = [];
for (var i = 0; i < 30; i++) {
var num = Math.floor(Math.random() * 21) + 80;
randomNums.push(num);
document.getElementById("random").innerHTML += num + " ";
}
// 统计重复数字及其出现次数
var numCount = {};
for (var i = 0; i < randomNums.length; i++) {
var num = randomNums[i];
if (numCount[num] === undefined) {
numCount[num] = 1;
} else {
numCount[num]++;
}
}
// 打印重复数字及其出现次数到页面上
var resultStr = "";
for (var num in numCount) {
if (numCount[num] > 1) {
resultStr += "数字" + num + "重复" + numCount[num] + "次<br>";
}
}
document.getElementById("result").innerHTML = resultStr;
</script>
</body>
</html>
首先,我们使用一个 for 循环生成 30 个介于 80 和 100 之间的随机整数,并将它们保存在数组中。然后,将这些随机数打印到页面上。
接着,我们使用另一个 for 循环遍历这个数组,统计每个数字出现的次数,并将结果保存在一个对象中。如果一个数字之前未出现过,我们将其次数设置为 1,否则将其次数加 1。
最后,我们再遍历一遍保存数字次数的对象,找出出现次数大于 1 的数字,将其和出现次数拼接成字符串,并打印到页面上。
原文地址: https://www.cveoy.top/t/topic/booa 著作权归作者所有。请勿转载和采集!