<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<script>
var numberArray = [1, 2, 3, 4, 10, 5, 6, 7];
var i,
len = numberArray.length,
imGreater = numberArray[0];
for (i = 0; i < len; i++) {
maxNumber = Math.max(len)
}
function myFunction() {
document.getElementById("demo").innerHTML = console.log(maxNumber );
}
</script>
这有什么问题吗?与 Javascript 范围有关吗?
最佳答案
从它完全按照您的要求做的意义上来说,它没有“错误”。您正在对数组的长度运行 Math.max,该长度不会改变,并且可能不是您想要做的。我想你想针对实际的数组运行它
Math.max.apply(null,numberArray);
因为这将为您提供所提供数组中的最大数字。
自己做
您也可以自己在循环中编写此代码,考虑到您创建了一个循环并设置了一些变量,这也可能是您想要做的事情。创建这些变量后开始,您可以编写以下循环
for(i = 1; i < len; i++) // you can skip the first one as this is set to imGreater already
{
if(numberArray[i] > imGreater)
{
imGreater = numberArray[i];
}
}
关于javascript - 我的 Math max 函数出了什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38563193/