js之求最大值和最小值总结

<script>
/*
 关于最大值和最小值:
   求最大值的方法是Match.max()  返回值最大的数字:
       里面可以传入多个参数,得到我们的最大的值
    求最小值的方法是Match.min() 返回值最小的数字:
        里面可以传入多个参数,得到我们的最小的值
        
    值得注意的是:
      1.如果有任一参数不能被转换为数值,则结果就是nan
         Math.max(true, 0) // 1
         Math.max(true, '2', null) // 2
         Math.max(1, undefined) // NaN
         Math.max(1, {}) // NaN
      2.如果没有参数,ze结果就是无穷大lnfinity
      var min = Math.min();
      var max = Math.max();
      console.log(min > max);
*/

function lop(a,b){
    console.log(a)
    console.log(b)
    return a+b
}
 
   function kop(nji){
       console.log(Math.max(nji))//因为出入的是数组,数组经过number转换是得到nan的,所有是无法得到最大值的
        console.log(Math.min(nji))
        
        for(var i=0;i<nji.length;i++){
            //1.第一种求最大值的方法
             console.log(Math.max(nji[i]))
             console.log(Math.min(nji[i]))
              console.log("")
              //因为reduce是可以传入一个函数作为累计器的,所以又是数组调用,所有就把数组的值传进去了
              console.log(nji.reduce(lop))
               
               //2.这样可以得到最后一个值为最大值
               console.log(nji.sort(function(a,b){
                   return a-b
               }))
               
               //3.第三种求最大值的方法
               /*
               eval() 函数计算或执行参数。
               
               如果参数是表达式,则 eval() 计算表达式。如果参数是一个或多个 JavaScript 语句,则 eval() 执行这些语句
               
               */
               var ev=eval("Math.max("+nji+")")
               console.log(ev)
               //4.第四种求最大值的方法 使用apply()  
               //因为这是把这里的this指向MATH,然后再把nji这个数组的值传进去
               var hui=Math.max.apply(this,nji)
               console.log(hui)
               
               //5.使用es6的扩展运算符
               var tyu=Math.max(...nji)
                console.log(...nji)//这个还可以这么用
                
               console.log(tyu)
        }
   }
     var nji=[1,68,99,51,92,24,77755,756,5,6,2]
 kop(nji)
</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值