JS实现获取数组中最大值或最小值功能示例
作者:huangpb0624 发布时间:2024-05-02 16:15:26
标签:JS,数组,最大值,最小值
本文实例讲述了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;
}
console.log([55,38,7,19].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;
}
console.log([55,38,7,19].max());
运行结果:
如果引用了别的类库进行开发,害怕类库也用了同名的原型方法,可以在生成函数之前可以进行重名判断:
if(typeof Array.prototype['max'] == 'undefined'){
Array.prototype.max = function(){...}
}
方法二:
//最小值
Math.min.apply(Math,arr); //等效于 Math.min.apply({},arr)和Math.min.apply(null,arr);
//原本取得最小值的方法是Math.min(n1,n2,n3...), apply可以改变参数的传入形式,第一个参数是什么都不是很重要
//最大值
var arr = [55,38,7,19];
console.log(Math.max.apply(Math,arr));
运行结果:
多维数组可以先打散为一维数组再做以上处理。
var arr1 = [1,2,3,[5,6],[3,4,8]];
var arr2 = arr1.join(",").split(",");
var a = Math.min.apply(Math,arr2);
console.log(a);
运行结果:
方法三:
var arr = [55,38,7,19];
function getMaxMin(arr,maxmin){
if(maxmin === "max"){
return Math.max.apply(Math,arr);
}else if(maxmin === "min"){
return Math.min.apply(Math,arr);
}
}
var a = getMaxMin(arr,"max");
console.log(a);
var b = getMaxMin(arr,"min");
console.log(b);
运行结果:
希望本文所述对大家JavaScript程序设计有所帮助。
来源:https://blog.csdn.net/huangpb123/article/details/77281255


猜你喜欢
- 问题你想将一个模块分割成多个文件。但是你不想将分离的文件统一成一个逻辑模块时使已有的代码遭到破坏。解决方案程序模块可以通过变成包来分割成多个
- 以前一直用RHEL 6.3和6.4,系统盘里自带了mysql server,配置好yum源后,直接yum install mysql-ser
- char与varchar的区别来源:https://www.cnblogs.com/ZhuChangwu/p/15118290.html
- 问题当浏览SQL Server 2008的新特性时,我们看到了透明数据加密。这看起来很有趣。您能为我们解释一下并介绍下执行它的细节吗?专家解
- 用ASP.NET与SQL SERVER可是缘份最好了,稍大的程序一般第一先考虑的是SQL SERVER,只是一些很考虑经济的才使用ACCES
- 第一种,fitimport kerasfrom keras.models import Sequentialfrom keras.layer
- 本文实例讲述了JavaScript内置对象math,global功能与用法。分享给大家供大家参考,具体如下:学习要点:1.Global对象2
- Oracle9i中提供强大的迁移功能,可以从多种数据库向Oracle迁移数据。Oracle新发行的迁移工具提供了从Access2
- 下面要学的是列表:任务1、“千年虫”我来了函数enumerateenumerate() 函数用于将一
- 从一段指定的字符串中,取得期望的数据,正常人都会想到正则表达式吧?写过正则表达式的人都知道,正则表达式入门不难,写起来也容易。但是正则表达式
- 在项目中遇到按下Backspace键让浏览器后退的问题,上网搜了几种解决方案都不太理想。于是集众人之智,采众家之长,归纳如下:1、在公用js
- 本文实例讲述了基于pako.js实现gzip的压缩和解压功能。分享给大家供大家参考,具体如下:<!DOCTYPE html>&l
- 废话不多说,直接上代码:# coding:utf-8from urllib import requestfrom urllib import
- 数组排序排序是指将元素按有序顺序排列。有序序列是拥有与元素相对应的顺序的任何序列,例如数字或字母、升序或降序。NumPy ndarray 对
- redux-saga 是一个管理 Redux 应用异步操作的中间件,功能类似redux-thunk + async/await, 它通过创建
- JSON 基础简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,
- 导读你真的知道CHAR和VARCHAR类型在存储和读取时的区别吗?还是先抛几条结论吧:1、存储的时候,CHAR总是会补足空格后再存储,不管用
- 工厂方法(Factory Method)模式又称为虚拟构造器(Virtual Constructor)模式或者多态工厂(Polymorphi
- Python中可以使用for循环实现累加求和for循环语法:for 变量 in range(x):循环需要执行的代码如下实现1到n求和:de
- Page Object模式是Selenium中的一种测试设计模式,主要是将每一个页面设计为一个Class,其中包含页面中需要测