zoukankan      html  css  js  c++  java
  • 求数组的最大值、最小值、平均值

    // 第一种方法
    function arrMaxNum2(arr) {
        return Math.max.apply(null, arr);
    }
    function arrMinNum2(arr) {
        return Math.min.apply(null, arr);
    }
    function arrAverageNum2(arr) {
        var sum = eval(arr.join("+"));
        return ~~(sum / arr.length * 100) / 100;
    }
    
    // 第二种方法
    function cacl(arr, callback) {
        var ret; 
        for (var i = 0; i < arr.length; i++) {
            ret = callback(arr[i], ret);
        }
        return ret;
    }
    Array.prototype.max = function () {
        return cacl(this, function (item, max) {
            if (!(max > item)) {
                return item;
            } else {
                return max;
            }
        });
    };
    Array.prototype.min = function () {
        return cacl(this, function (item, min) {
            if (!(min < item)) {
                return item;
            } else {
                return min;
            }
        });
    };
    Array.prototype.sum = function () {
        return cacl(this, function (item, sum) {
            if (typeof (sum) == 'undefined') {
                return item;
            } else {
                return sum += item;
            }
        });
    };
    Array.prototype.avg = function () {
        if (this.length == 0) {
            return 0;
        }
        return this.sum(this) / this.length;
    };
    
    var theArray = [1, -2, 4, 9, 15];
    console.log(theArray.max());
    console.log(theArray.min());
    console.log(theArray.sum());
    console.log(theArray.avg());
    复制代码
  • 相关阅读:
    Rocket
    Rocket
    Rocket
    Rocket
    Rocket
    PHPstorm快捷键大全
    PHP命名规则
    第二章:第2章PHP基础语法
    第一章:初识PHP
    jQuery适用技巧笔记整合
  • 原文地址:https://www.cnblogs.com/ZGQ-VIP/p/12162956.html
Copyright © 2011-2022 走看看