<!DOCTYPE html>
<html>
<head>
<!-- 页面上有3个输入框:分别为max,min,num;三个按钮:分别为生成,排序,去重;
在输入框输入三个数字后,先点击生成按钮,生成一个数组长度为num,值为max到min
之间的随机整数;点击排序,对当前数组进行排序,点击去重,对当前数组进行去重。
每次点击之后使结果显示在控制台
-->
<meta charset="utf-8">
<title>生成、排序、去重</title>
</head>
<body>
<!-- 创建三个输入框和三个按钮 -->
<input type="text" id="max" />
<input type="text" id="min" />
<input type="text" id="num" />
<input type="button" id="btn" value="生成" />
<input type="button" id="btn1" value="排序" />
<input type="button" id="btn2" value="去重" />
</body>
<script type="text/javascript"> //先对输入框声明变量
var oMax=document.getElementById("max")
var oMin=document.getElementById("min")
var oNum=document.getElementById("num")
var oBtn=document.getElementById("btn")
var oBtn1=document.getElementById("btn1")
var oBtn2=document.getElementById("btn2") var arr=[];
// 生成一个数组长度为num,值为max到min之间的随机整数
oBtn.onclick =function(){ for(var d=0;d<oNum.value;d++){
arr[d]=random(oMax.value,oMin.value)
}
//范围随机函数的封装
function random(max,min){
return Math.round(Math.random()*(max-min)+min)
}
console.log(arr)
} //排序
//数组的排序最重要的一点就是遍历,此处数组的冒泡排序
oBtn1.onclick = function(){
for (var i=0;i<arr.length-1;i++) {
for (var j=0;j<arr.length-i-1;j++) {
var sum;
if (arr[j]>arr[j+1]) {
sum=arr[j+1];
arr[j+1]=arr[j];
arr[j]=sum;
}
}
}
console.log(arr)
} // 去重
oBtn2.onclick = function(){
for (var a = 0;a<arr.length;a++) {
for (var e=a+1;e<arr.length;e++) {
if(arr[a]==arr[e]){
arr.splice(e,1);
e--;
}
}
}
console.log(arr);
} </script>
</html>