<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];
 }
}

09-25 18:25