可以从两个方面考虑

1、使用Math.max()、Math.min()方法

2、遍历数组获取最大值

使用Math的静态方法max/min

1、结合ES6使用扩展运算符

Math.max(...arr)

扩展运算符:将数组转化成以逗号分隔的参数

2、使用apply或者call方法

Math.max.apply(null,arr);

Math.max.call(null,...arr);

区别:apply方法的参数是数组,call方法的参数是逗号间隔的参数列表

3、结合reduce方法

reduce方法接收一个函数作为累加器,数组的每一个值(从左到右)开始缩减,最终计          算为一个值。

在这里,这个累加器函数就是getMax(),比较两个数,返回其中的最大值,通过这样的缩减,最后返回整个数组的最大值。

function getMax(prev, next) {

return Math.max(prev, next)

}

arr.reduce(getMax)使用遍历获取

遍历方法获取

1、只比较找出最大值

假定数组中的第一个元素值最大max,循环数组,将max与其他元素做比较,大的值赋给max。循环结束之后,max的值即为最大值。

let max = arr[0]
arr.forEach(item => max = item > max ? item : max)
console.log(max) // 100

2、将真个数组都排序,找出最大值

利用array.sort()方法,指定排序函数,来排序数组。当然,你也可以使用其他排序方式,来排序数组。

let AS = arr.sort((a, b) => a - b)
AS[arr.length-1]  // 获取最大值:100
AS[0] // 获取最小值: -1

代码实现如下:

​
let arr = [2,-1,56,100,-100,32,4,9];let max1 = Math.max(...arr);
console.log("max1:"+max1);let max2 = Math.max.apply(null,arr);
console.log("max2:"+max2);let max3 = Math.max.call(null,...arr);
console.log("max3:"+max3);function getMax(pre,next){return Math.max(pre,next);
}
let max4 = arr.reduce(getMax);
console.log("max4:"+max4);let max5 = arr[0];
arr.forEach((item) => max5 = (item > max5 ? item : max5))
console.log("max5:"+max5);const newArr = arr.sort((a,b) => a - b);
let max6 = newArr[arr.length - 1];
console.log("max6:"+max6);

浏览器结果如下:

JS获取数组的最大最小值相关推荐

  1. js 获取数组的深度

    js 获取数组的深度 通过递归的方法 getDepth(arr, depth) {var flag = false;var temp = [];for (let i = 0; i < arr.l ...

  2. js获取数组长度-length属性的介绍

    js获取数组长度-length属性的介绍 length属性 length 属性不能体现数组元素的实际个数 length 属性值动态变化对数组的影响 length属性 在 js 中获取数组长度非常简单, ...

  3. js获取数组前n项的和

    使用的API js获取数字数组前n项和方法,用js自带的API Array.prototype.reduce方法. 都可直接直接复制代码到console窗口下运行 简单例子 var array = [ ...

  4. html获取数组的前三个元素,web前端:js 获取数组最后一个元素

    Javascript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在html(标 ...

  5. js 获取数组最后一个元素

    JavaScript 获取数组的最后一个元素,JavaScript 获取Array末尾元素 一.JavaScript pop() 方法 pop() 方法用于删除并返回数组的最后一个元素. 注意:pop ...

  6. JS获取数组元素下标,获取数组元素,删除数组元素,添加数组元素

    /* 获取数组元素下标 */var i=list_done.map(item=>item.text).indexOf(value);/* 获取数组元素 */var cur_item=list_d ...

  7. JS - 获取数组重复项

    数组-获取数组重复项 场景一:有时候我们需要重复项,给用户二次确认数据 场景二:只要非重复项数据 场景三:把相同类型数据排列在一起 以下可以满足以上场景 //数据 const List=[{name: ...

  8. Js获取 数组或对象 的长度

    Javascript 计算Object的长度 获取数组长度比较简单 Var arr=["as","da"]; arr.length不用加();   在我们日常开 ...

  9. JS 获取数组元素相同的下标

    需求:获取数组中相同元素的下标. 思路:循环嵌套遍历两次数组,分别对比值是否相等 arr[i] = arr[j],如果相等,记录下来 index,同时标记  haveSame .当 haveSame ...

最新文章

  1. 完成端口模式下的高性能网络服务器【转】
  2. 安卓学习第36课——PopupWindow
  3. c语言聊天程序socket,今天打的代码。基于TCP的聊天程序。
  4. [转载] 纯函数和函数柯里化
  5. golang获取程序运行路径
  6. PowerDesigner逆向工程从现有数据库生成PDM
  7. HDU2014 青年歌手大奖赛_评委会打分【入门】
  8. 基于HMM的语音识别技术原理
  9. Axure RP 9免费下载
  10. 信息化规划、信息化战略规划、信息资源规划、信息化项目规划之间的关系
  11. x509证书有效期校验过程_基于TLS1.2(GmSSL)
  12. 9个offer,12家公司,35场面试,从微软到谷歌,应届计算机毕业生的2012求职之路
  13. 多年测试经验分享:上市公司怎么进行安全测试
  14. 解决车载U盘:USB设备未连接 问题
  15. nginx配置文件及说明
  16. Arcgis地图服务切片
  17. openoffice linux 目录,Linux下openoffice的安装
  18. 2---理解正余弦、复数求模、反正切和乘除运算的CORDIC算法实现
  19. 学校招聘行政老师的计算机能力测试,【】计算机教师招聘试题(25页)-原创力文档...
  20. 《拆解 XLNet 模型设计,回顾语言表征学习的思想演进》

热门文章

  1. 通信运营商真的每天躺赚4个亿吗?
  2. 引流虚拟主机和服务器,2020微商引流客源_虚拟主机对SEO
  3. python机器学习基础之plt.grid(网格线设置)
  4. 喜报!Stratifyd获评“北京市用户满意企业”荣誉称号
  5. 张一鸣:为什么BAT挖不走我们的人才?
  6. C语言控制怪物自动走,一起用C语言打怪物
  7. python朝花夕拾
  8. tar.gz 压缩和解压命令
  9. 交大历史上最牛的硕士毕业论文致谢
  10. Google Earth Engine(GEE)——美国国家森林141种类型