JS获取数组的最大最小值
可以从两个方面考虑
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获取数组的最大最小值相关推荐
- js 获取数组的深度
js 获取数组的深度 通过递归的方法 getDepth(arr, depth) {var flag = false;var temp = [];for (let i = 0; i < arr.l ...
- js获取数组长度-length属性的介绍
js获取数组长度-length属性的介绍 length属性 length 属性不能体现数组元素的实际个数 length 属性值动态变化对数组的影响 length属性 在 js 中获取数组长度非常简单, ...
- js获取数组前n项的和
使用的API js获取数字数组前n项和方法,用js自带的API Array.prototype.reduce方法. 都可直接直接复制代码到console窗口下运行 简单例子 var array = [ ...
- html获取数组的前三个元素,web前端:js 获取数组最后一个元素
Javascript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在html(标 ...
- js 获取数组最后一个元素
JavaScript 获取数组的最后一个元素,JavaScript 获取Array末尾元素 一.JavaScript pop() 方法 pop() 方法用于删除并返回数组的最后一个元素. 注意:pop ...
- JS获取数组元素下标,获取数组元素,删除数组元素,添加数组元素
/* 获取数组元素下标 */var i=list_done.map(item=>item.text).indexOf(value);/* 获取数组元素 */var cur_item=list_d ...
- JS - 获取数组重复项
数组-获取数组重复项 场景一:有时候我们需要重复项,给用户二次确认数据 场景二:只要非重复项数据 场景三:把相同类型数据排列在一起 以下可以满足以上场景 //数据 const List=[{name: ...
- Js获取 数组或对象 的长度
Javascript 计算Object的长度 获取数组长度比较简单 Var arr=["as","da"]; arr.length不用加(); 在我们日常开 ...
- JS 获取数组元素相同的下标
需求:获取数组中相同元素的下标. 思路:循环嵌套遍历两次数组,分别对比值是否相等 arr[i] = arr[j],如果相等,记录下来 index,同时标记 haveSame .当 haveSame ...
最新文章
- 完成端口模式下的高性能网络服务器【转】
- 安卓学习第36课——PopupWindow
- c语言聊天程序socket,今天打的代码。基于TCP的聊天程序。
- [转载] 纯函数和函数柯里化
- golang获取程序运行路径
- PowerDesigner逆向工程从现有数据库生成PDM
- HDU2014 青年歌手大奖赛_评委会打分【入门】
- 基于HMM的语音识别技术原理
- Axure RP 9免费下载
- 信息化规划、信息化战略规划、信息资源规划、信息化项目规划之间的关系
- x509证书有效期校验过程_基于TLS1.2(GmSSL)
- 9个offer,12家公司,35场面试,从微软到谷歌,应届计算机毕业生的2012求职之路
- 多年测试经验分享:上市公司怎么进行安全测试
- 解决车载U盘:USB设备未连接 问题
- nginx配置文件及说明
- Arcgis地图服务切片
- openoffice linux 目录,Linux下openoffice的安装
- 2---理解正余弦、复数求模、反正切和乘除运算的CORDIC算法实现
- 学校招聘行政老师的计算机能力测试,【】计算机教师招聘试题(25页)-原创力文档...
- 《拆解 XLNet 模型设计,回顾语言表征学习的思想演进》