js求数组最大值的常用方法举例

 更新时间:2023年07月19日 10:16:12   作者:前端代码军师  
数组如何求最大值,想必很多的朋友都不会吧,下面这篇文章主要给大家介绍了关于js求数组最大值的常用方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

前言

除了使用 Math.max() 方法之外,JavaScript 中还有多种方法可以求数组的最大值,下面介绍其中的几种。

使用循环遍历数组并比较

可以使用 for 循环遍历数组,并使用一个变量来保存数组中的最大值。每当遇到一个比当前最大值大的元素时,更新变量的值。例如:

let arr = [1, 5, 3, 8, 2];
let maxNum = arr[0]; // 假设第一个元素为最大值
for (let i = 1; i < arr.length; i++) {
  if (arr[i] > maxNum) {
    maxNum = arr[i];
  }
}
console.log(maxNum); // 输出 8

使用 apply() 方法结合 Math.max() 方法

可以使用 apply() 方法将数组中的元素作为参数传递给 Math.max() 方法。例如:

let arr = [1, 5, 3, 8, 2];
let maxNum = Math.max.apply(null, arr);
console.log(maxNum); // 输出 8

使用 reduce() 方法

reduce() 方法可以将数组中的元素通过一个回调函数逐个进行计算,并返回最终的结果。可以在回调函数中比较每个元素和当前的最大值,并返回较大的值作为下一轮计算的最大值。例如:

let arr = [1, 5, 3, 8, 2];
let maxNum = arr.reduce(function(prev, curr) {
  return prev > curr ? prev : curr;
});
console.log(maxNum); // 输出 8

这三种方法都可以用于求数组中的最大值,具体选择哪种方法取决于实际情况和个人喜好。

附: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;
}
//数组长度
var array = new array(1,2,3,2,4,55,2);
alert(array.length);//输出7

总结

到此这篇关于js求数组最大值的常用方法举例的文章就介绍到这了,更多相关js求数组最大值的内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 微信小程序实现卡片层叠滑动效果

    微信小程序实现卡片层叠滑动效果

    这篇文章主要为大家详细介绍了微信小程序实现卡片层叠滑动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • arctext.js实现文字平滑弯曲弧形效果的插件

    arctext.js实现文字平滑弯曲弧形效果的插件

    这篇文章主要介绍了arctext.js实现文字平滑弯曲弧形效果的插件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • JS去除字符串最后的逗号实例分析【四种方法】

    JS去除字符串最后的逗号实例分析【四种方法】

    这篇文章主要介绍了JS去除字符串最后的逗号,结合实例形式分析了四种字符串遍历、截取的操作方法,需要的朋友可以参考下
    2019-06-06
  • JavaScript数组扁平转树形结构数据(Tree)的实现

    JavaScript数组扁平转树形结构数据(Tree)的实现

    本文主要介绍了JavaScript数组扁平转树形结构数据(Tree)的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • 微信小程序实现全局搜索代码高亮的示例

    微信小程序实现全局搜索代码高亮的示例

    本篇文章主要介绍了微信小程序实现全局搜索代码高亮的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • JavaScript实现获取dom中class的方法

    JavaScript实现获取dom中class的方法

    这篇文章主要介绍了JavaScript实现获取dom中class的方法,涉及javascript操作dom节点的使用技巧,需要的朋友可以参考下
    2015-02-02
  • setTimeout函数的神奇使用

    setTimeout函数的神奇使用

    setTimeout函数是一个原生的javascript函数。setTimeout函数会在一个指定的延迟时间之后调用一个函数或执行一段指定的代码。它的应用非常广泛,例如我们希望用户在浏览器某个页面一段时间后弹出一个对话框,或者是鼠标点击某个元素后隔几秒钟在删除这个元素。
    2017-02-02
  • JS一维数组转多维数组树的方法

    JS一维数组转多维数组树的方法

    这篇文章主要介绍了JS一维数组转多维数组树的方法,文章通过代码示例给大家讲解的非常详细, 对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-06-06
  • 探讨JavaScript标签位置的存放与功能有无关系

    探讨JavaScript标签位置的存放与功能有无关系

    在网页中,我们可以将JavaScript代码放在html文件中任何位置,但一般放在head或body标签里面。一般来说,<script>元素放在哪里与其的功能作用是紧密相关的,通过本文我们一起学习下
    2016-01-01
  • js 内存释放问题

    js 内存释放问题

    这里之所以使用setTimeout(),因为可以彻底回收当前所有对象,防止变量之间的引用导致释放失败,可以当作一个保障措施,按照道理来说,这里不会执行了。
    2010-04-04

最新评论