将数组中第一个元素赋值给一个变量,并且把这个变量作为最大值;
开始遍历数组,从第二个元素开始依次和第一个元素进行比较
如果当前的元素大于当前的最大值,就把当前的元素值赋值给最大值
移动到下一个元素,继续按前面一步操作
当数组元素遍历结束时,这个变量存储的就是最大值

var arr = [1,3,6,-8,2,9,99];Array.prototype.max = function () {// 将数组第一个元素的值赋给maxvar max = this[0];// 使用for 循环从数组第一个值开始做遍历for (var i = 1; i < this.length; i++) {// 如果元素当前值大于max,就把这个当前值赋值给maxif (this[i] > max) {max = this[i];}}// 返回最大的值return max;}// console.log(arr.max());

取数组中最小值

Array.prototype.min = function () {
var min = this[0];
this.forEach(function(ele, index,arr) {
if(ele < min) {
min = ele;
}
})
return min;
}
var arr = [8,45,23,3,6,2,7,234,56];
//console.log(arr.min());

使用数组的reduce()方法最大值。

Array.prototype.max = function() {return this.reduce(function(preValue, curValue,index,array) {return preValue > curValue ? preValue : curValue;})}  var arr = [1,45,23,3,6,2,7,234,56];console.log(arr.max());

内置函数Math.max()和Math.min()方法
Math.max(1,32,45,31,3442,4); // 3442
Math.min(1,32,45,31,3442,4); //1

Function.prototype.apply()让你可以使用提供的this与参数组与的数组来调用参数。

// 取出数组中最大值Array.max = function( array ){return Math.max.apply( Math, array );};// 取出数组中最小值Array.min = function( array ){return Math.min.apply( Math, array );};var arr = [1,45,23,3,6,2,7,234,56];
Array.max(arr); // 234
Array.min(arr); // 1

Math对象也是一个对象,可以使用对象的字面量来写,如:

Array.prototype.max = function () {return Math.max.apply({},this);}Array.prototype.min = function () {return Math.min.apply({},this);}var arr = [1,45,23,3,6,2,7,234,56];arr.max(); // 234arr.min(); // 1

其实还有更简单的方法。基于ES2015的方法来实现此功能,是使用展开运算符:

 Array.prototype.max = function () {return Math.max.apply({},this);}Array.prototype.min = function () {return Math.min.apply({},this);}var arr = [1,45,23,3,6,2,7,234,56];arr.max(); // 234arr.min(); // 1

这些只适用于纯数字的数组,列举了这多取最大值和最小值,当然最简单的要当数ES2015中使用展示运算符的方法。

取数组中最大值和最小值相关推荐

  1. 6 获取数组中最小值_C语言每日一练8——数组中最大值和最小值

    题目: 利用指针函数,求某数组中的最大值和最小值. 实现代码: /* ================================================================= ...

  2. 如何寻找数组中最大值与最小值(取双元素法)

    取双元素法.维持两个变量MAX_VALUE和MIN_VALUE,MAX_VALUE标记为最大值,MIN_VALUE标记为最小值,每次比较相邻的两个数,较大者与max比较,较小者与min比较,通过比较找 ...

  3. es6 数组找最大值_JavaScript 查找数组中最大值与最小值

    最小值算法如下: 将数组中第一个元素赋值给一个变量,把这个变量作为最小值: 开始遍历数组,从第二个元素开始依次和第一个元素进行比较: 如果当前的元素小于当前的最小值的话,就把当前的元素值赋值给最小值: ...

  4. 找最大数及下标 指针 c语言,c语言求数组中最大值和最小值及其下标

    思路:假定一个数为最大值,如果有个数比假定的最大值还大,那么该数就为最大值. 最小值同理. 使用for循环. */ public class MaxMin{ public static void ma ...

  5. 求一维数组中最大值和最小值

    #include<stdio.h> int niubi_max(int a[]);    // 函数声明类型与定义类型应该相同,不能声明是 int,定义是 int a[] int niub ...

  6. 数组对象,如何取数组中的最小值和最大值

    需求:后端数据返回中,在数据里面需要取最先开始的时间和结束的时间,等于取数组中的最小值和最大值 newCategory() {let new1 = this.data.newList.map((ite ...

  7. 图解|查找数组中最大值的5种方法!

    作者 | 王磊 来源 | Java中文社群(ID:javacn666) 转载请联系授权(微信ID:GG_Stone) 我们在一些特定场景下,例如查询公司员工的最高薪资,以及班级的最高成绩又或者是面试中 ...

  8. 同时查找数组中最大和最小值

    查找数组中的最大值和最小值有下面的方法: 1.按照普通的方法进行查找,分别写出找到数组中最大值函数和最小值函数,这种方法很简单: 代码如下: int Min(int *pnArr, int nLen) ...

  9. 二分法求数组最大最小_JavaScript之如何求数组的最大值和最小值

    上次给大家分享了从零事项jQuery的extend,今天跟大家分享下如何求数组的最大值和最小值. 取出数组中的最大值或者最小值是开发中常见的需求,但你能想出几种方法来实现这个需求呢? 1. Math. ...

最新文章

  1. 清晰易懂的Numpy进阶教程
  2. 【Android Gradle 插件】Module 目录下 build.gradle 配置文件 ( android 闭包块配置 | AppExtension 扩展类型参考文档 )
  3. 杭电find the night
  4. 自定义LOG投递OSS数据Partition,优化你的计算
  5. LeetCode:Add Binary
  6. 创建zookeeper客户端
  7. SGD(随机梯度下降)详解
  8. html5的图片上传插件,分享5个好用的javascript文件上传插件
  9. Air202学习(3)AT指令开发示例
  10. 使用 python 实现恩尼格码的加密
  11. windows 10 删除壁纸历史记录
  12. A92怎么获取root,A92参数
  13. 客制化键盘编程_客制化键盘QMK固件入门-修改keyboard和keymap
  14. html5学生成绩表,学生成绩表
  15. 奥运上最幸福的失意人-劳伦杰克逊
  16. 准到吓人的手相。。。
  17. 四则运算web版需求规格说明书
  18. 再下一城!CPC即将登录全球知名交易所BiKi!
  19. 干货:Easy系列各视频平台云台控制功能的使用注意事项汇总
  20. VS2019无法打开源文件

热门文章

  1. 垃圾ACMer的暑假训练220716
  2. 计算机毕业设计Node.js+Express校园快递代取系统(源码+程序+lw+远程调试)
  3. 在小公司天天人肉取数,真的会废了吗?
  4. 计算机考试老师怎么评卷,你写的字VS电脑阅卷呈现的字,两者相差悬殊,网友:机器尽力了...
  5. 【python自动化办公(14)】利用python向Word文档中写入内容(format格式化中槽的使用和自动生成请假条小应用)
  6. web前端字体居中_css怎样使文字居中?
  7. IDEA 2022 Translation 翻译文档失败: 未知错误
  8. 春晚 “北帝” “东邪”
  9. Hard Fault 异常错误堆栈分析
  10. Cont. TF-IDF (BigData Data Mining)