为什么最大最小值都是NaN

为什么最大最小值都是NaN

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>Math.random()</title>

</head>

<body>

<script>

      var arr=[];

    for(i=0;i<10;i++){

        arr[i]=Math.floor(Math.random()*100)

        document.write(arr[i]+",");

        var num

        num+=arr[i]

    }//补充代码

      document.write("这组数这组数中最大值为:"+Math.max(num)+"这组数这组数中最小 值为:"+Math.min(num))

</script>

</body>

</html>


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
陈小壹 2017-02-13 17:42:02

对于最大值和最小值是NAN的同学,这样写就可以解决问题了:

var max1 = Math.max.apply(Math,arr);
var min1 = Math.min.apply(Math,arr);
document.write(arr + "<br>");
document.write("这组数中最大的值是:" + max1 + "," + "最小的值是:" + min1);

apply()方法是用来在数组中找最大和最小值的,第一个参数是Math本身,第二个参数是数组

提问者 慕妹6685146 2017-01-13 17:43:08

已经解决了<html>

<head>

    <meta charset="UTF-8">

    <title>Math.random()</title>

</head>

<body>

<script>

      var arr=[];

    for(i=0;i<10;i++){

        arr[i]=Math.floor(Math.random()*100)

        document.write(arr[i]+",");

        var num;

        num+=arr[i]

    }//补充代码

      document.write("这组数这组数中最大值为:"+Math.max.apply(null,arr)+"这组数这组数中最小值为:"+Math.min.apply(null,arr))

</script>

</body>

</html>


没有马甲线的安琪拉 2017-01-13 17:15:57

num是变量名,又不是数组名,你换成数组名试试

  • 提问者 慕妹6685146 #1
    还是不行·····
    2017-01-13 17:33:34
  • 大大张伟大 回复 提问者 慕妹6685146 #2
    Math.max() 以及 Math.min() 方法中传入的应该是一组数,数组是接收不了的。可以参考一下我的博客做的总结,里面有多种方法。 http://blog.csdn.net/gyjyywc/article/details/54944377
    2017-02-09 10:25:41
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
HTML5与CSS3实现动态网页 2018
  • 参与学习       1887    人
  • 提交作业       4643    份
  • 解答问题       5760    个

有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师