如何从生成随机数的数组中确定最高数和最低数;JavaScript
Javascript:如何从生成随机数的数组中确定最高数和最低数;JavaScript,javascript,html,arrays,loops,random,Javascript,Html,Arrays,Loops,Random,Javascript: var arrayLength = prompt("Enter how many elements you want?"); if(isNaN(arrayLength) || arrayLength < 1){ arrayLength = 50; } var array = []; var list =
var arrayLength = prompt("Enter how many elements you want?");
if(isNaN(arrayLength) || arrayLength < 1){
arrayLength = 50;
}
var array = [];
var list = "<ul>";
var totalSum = 0;
var totalOddSum = 0;
var totalEvenSum = 0;
var lowestNum = 0;
var highestNum = 0;
for(i = 1; i <= arrayLength; i++){
array[i] = parseInt(Math.random() * 15);
list += "<li>" + array[i] + "</li>";
totalSum += array[i];
if(array[i] % 2 == 0){
totalEvenSum += array[i];
}
else{
totalOddSum += array[i];
}
}
list += "</ul>";
document.getElementById("div1").innerHTML += list;
document.getElementById("div2").innerHTML += "Total Sum: " + totalSum + "<br>";
document.getElementById("div2").innerHTML += "Total Even Sum: " + totalEvenSum + "<br>";
document.getElementById("div2").innerHTML += "Total Odd Sum: " + totalOddSum + "<br>";
document.getElementById("div2").innerHTML += "Lowest Number: " + lowestNum + "<br>";
document.getElementById("div2").innerHTML += "Highest Number: " + highestNum + "<br>";
HTML:
<div id="div1">
</div>
<div id="div2">
</div>
正如标题所说,我希望能够找到数组生成的最低和最高数字。为了找到Math.random生成的最高和最低数字,我需要在循环中实现什么
谢谢大家。首先,最小值和最大值的初始值是错误的:
var lowestNum = 0;
var highestNum = 0;
最小值应初始化为+Inf,最大值应初始化为-Inf
var lowestNum = Infinity, highestNum = -Infinity;
然后,添加一个简单的条件来更新迄今为止找到的最低和最高值
在循环结束时,变量将表示整个数组中的最低值和最高值。您可以使用Math.max和Math.min查找数组中的最高值或最低值:
var highest = Math.max.apply(Math, array);
var lowest = Math.min.apply(Math, array);
没有必要自己做循环。这是因为Math.max和Math.min将接受任意数量的参数并对所有参数进行操作,因此如果使用.apply将数组作为一系列参数传递,它将在一次函数调用中计算整个数组
var highest = Math.max.apply(Math, array);
var lowest = Math.min.apply(Math, array);