zoukankan      html  css  js  c++  java
  • 求数组的最值?

    方法一:

    • 求数组最大值:Math.max.apply(null,arr);

    var arr = [3,43,23,45,65,90];
    var max = Math.max.apply(null,arr);
    console.log(max);
    // 90

    • 求数组最小值:Math.min.apply(null,arr);

    var arr = [3,43,23,45,65,90];
    var min = Math.min.apply(null,arr);
    console.log(min);
    // 3

    方法二:Array.max = function(arr){} / Array.min = function(arr){}

    var array = [3,43,23,45,65,90];
    
    Array.max = function( array ){ 
       return Math.max.apply( Math, array );
    };
    Array.min = function( array ){ 
       return Math.min.apply( Math, array );
    };
    
    var max = Array.max(array);
    console.log(max);  // 90
    
    var min = Array.min(array);
    console.log(min);  // 3

    方法三:Array.prototype.max = function(){};Array.prototype.min = function(){};

    • 求数组最大值(基本思路:将数组中的第一个值赋值给变量max ,将数组进行循环与max进行比较,将数组中的大值赋给max,最后返回max;)

    var arr = [3,43,23,45,65,90];
    Array.prototype.max = function() { 
        var max = this[0];
        var len = this.length; 
        for (var i = 0; i < len; i++){ 
            if (this[i] > max) { 
              max = this[i]; 
            } 
        } 
        return max;
    }
    var max = arr.max();
    console.log(max);  // 90
    • 求数组最小值:
    var arr = [3,43,23,45,65,90];
    Array.prototype.min = function() { 
        var min = this[0];
        var len = this.length;
        for(var i = 0;i< len;i++){
            if(this[i] < min){
                min = this[i];
            }
        }
        return min;
    }
    var min = arr.min();
    console.log(min);  // 3

    .

  • 相关阅读:
    ansible tower
    gitlab说明书
    新建系统配置
    docker&k8s-配置/常用命令
    Winscp隧道实现-跳板机/跨机连接
    FDM, FVM, FEM
    批量处理文件
    未来的职业规划
    内心两大矛盾
    MATLAB在Linux下的安装方法(待尝试)
  • 原文地址:https://www.cnblogs.com/crazycode2/p/10544826.html
Copyright © 2011-2022 走看看