本文为工具方法,提供简单但常用的js方法函数。

方法一

//最小值
Array.prototype.min = function() {var min = this[0];var len = this.length;for (var i = 1; i < len; i++){ if (this[i] < min){ min = this[i]; } } return min;
}//最大值
Array.prototype.max = function() { var max = this[0];var len = this.length; for (var i = 1; i < len; i++){ if (this[i] > max) { max = this[i]; } } return max;
}

如果你是引入类库进行开发,害怕类库也实现了同名的原型方法,可以在生成函数之前进行重名判断:

if (typeof Array.prototype['max'] == 'undefined') { Array.prototype.max = function() { ... ...}
}

方法二

用Math.max和Math.min方法可以迅速得到结果。apply能让一个方法指定调用对象与传入参数,并且传入参数是以数组形式组织的。恰恰现在有一个方法叫Math.max,调用对象为Math,与多个参数

Array.max = function( array ){ return Math.max.apply( Math, array );
};Array.min = function( array ){ return Math.min.apply( Math, array );
};

但是,John Resig是把它们做成Math对象的静态方法,不能使用大神最爱用的链式调用了。但这方法还能更精简一些,不要忘记,Math对象也是一个对象,我们用对象的字面量来写,又可以省几个比特了。

Array.prototype.max = function(){ return Math.max.apply({},this)
} Array.prototype.min = function(){ return Math.min.apply({},this)
} [1,2,3].max()// => 3
[1,2,3].min()// => 1

方法三

function getMaximin(arr,maximin) { if(maximin=="max") { return Math.max.apply(Math,arr); } else if(maximin=="min") { return Math.min.apply(Math, arr); }
} var a=[3,2,4,2,10];
var b=[12,4,45,786,9,78]; console.log(getMaximin(a,"max"));//10
console.log(getMaximin(b,"min"));//04

方法四

var a=[1,2,3,5];
alert(Math.max.apply(null, a));//最大值
alert(Math.min.apply(null, a));//最小值

多维数组可以这么修改:

var a=[1,2,3,[5,6],[1,4,8]];
var ta=a.join(",").split(",");//转化为一维数组
alert(Math.max.apply(null,ta));//最大值
alert(Math.min.apply(null,ta));//最小值

js获取数组中的最大值和最小值的方法汇总相关推荐

  1. Java 数组 定义一个数组,获取数组中的最大值和最小值,奇数个数和偶数个数...

    /*** 定义一个数组,获取数组中的最大值和最小值 奇数个数和偶数个数* */ package com.xuyigang1234.chp01;public class Demo8 {public st ...

  2. java中定义一个数组,获取数组中的最大值和最小值

    思路 : 我们定义一个数组,再定义一个max变量 用来存在最大值  : 再定义一个min变量,用来存在最小值: 我们遍历数组,假如当前值大于max,就把当前值赋值给max; 假如当前值小于min,就把 ...

  3. Javascript获取数组中的最大值和最小值方法汇总

    方法一 sort()方法 b-a从大到小,a-b从小到大 var max2 = arr.sort(function(a,b){ return b-a; })[0]; console.log(max2) ...

  4. 定义一个数组,获取数组中的最大值和最小值

    思路 : 我们定义一个数组,再定义一个max变量 用来存储最大值  : 再定义一个min变量,用来存储最小值: 我们遍历数组,假如当前值大于max,就把当前值赋值给max; 假如当前值小于min,就把 ...

  5. Java 数组中找最大值和最小值

    题目描述 计算并输出一维数组中的最大值和最小值. 输入描述 输入一个具有8个数的一维数组 输出描述 输出该数组中的最大值和最小值 输入样例 19.8 12.3 45 67.6 23 15.98 2.5 ...

  6. 寻找数组中的最大值和最小值

    解法1. 我们可以吧数字中的最大值和最小值看成两个独立的问题分别求出数组中的最大值和最小值. 直接的方法就是扫描数字,找到最大数以及最小数. <span style="font-siz ...

  7. Java编程定义一个数组,输出数组中的最大值与最小值

    package com.pzhu.demo;public class MaxMin {//Java编程定义一个数组,输出数组中的最大值和最小值public static void main(Strin ...

  8. Java定义一个数组,输出数组中的最大值和最小值

    题目 定义一个数组,输出数组中的最大值和最小值 public class TestArray1 {public static void main(String[] args) {int[] a = n ...

  9. 给定一个数组,输出这个数组中的最大值和最小值

    /*** @author LLJ* @time 2020-5-6 17点06分* @Description 给定一个数组,输出这个数组中的最大值和最小值*/ public class BigAndSm ...

  10. 编程之美2.10 寻找数组中的最大值和最小值

    这个问题其实很容易解决,就是循环遍历一遍数组,然后找到数组中存在的最大值和最小值就可以了,书中主要讨论的问题是比较次数较小的方法,不过,书中已经证明了,无论用什么方法最少的比较次数也就是循环遍历一遍的 ...

最新文章

  1. 强化学习(五) - 时序差分学习(Temporal-Difference Learning)及其实例----Sarsa算法, Q学习, 期望Sarsa算法
  2. Zookeeper源码分析:Leader角色初始化
  3. parquet java_Apache Parquet Java API的文档?
  4. Spring 常用工具类
  5. [Cocos2d-x For WP8]ActionManager动作管理
  6. Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined) E. Goods transportation 动态规划
  7. codeforce A - Sequence with Digits
  8. Python爬虫(二)——豆瓣图书决策树构建
  9. leetcode-36-有效的数独
  10. SQL Server开发接口生成方法
  11. NOIP 2011 Day2
  12. bzoj1612 Usaco08 Jan 牛大赛
  13. PGM:概率论基础知识
  14. Introduction to Computer Networking学习笔记(二十五):NATs
  15. 在Hive中使用过的函数记录(百分比、截取字符串、分组TOP N、日期转换、日期是第几周)
  16. [哈佛幸福课13 听后感]
  17. GOP和帧率、码率的关系
  18. .scc文件是做什么用的?
  19. 【用户画像】标签任务开发流程(源码之实体类、工具类、配置文件、DAO层)
  20. typora全局替换文本

热门文章

  1. 小米有品员工签军令状,自动放弃年终奖!
  2. Docker 的部署方式
  3. mysql 8.0 ~ innodb与变量优化
  4. httpd-2.2部署Discuz!论坛系统、wordpress博客系统和phpMyAdmin程序
  5. Linkedin Camus,从Kafka到HDFS的数据传输管道
  6. Android之开发杂记(一)
  7. asp.net MVC初学体会.
  8. 羊皮卷的故事-第十七章-羊皮卷之十
  9. 12.Kong入门与实战 基于Nginx和OpenResty的云原生微服务网关 --- 高级案例实战
  10. 6.企业安全建设入门(基于开源软件打造企业网络安全) --- 代码审计