JS实现获取数组中最大值或最小值功能示例

 更新时间:2019年03月02日 09:54:34   作者:huangpb0624  
这篇文章主要介绍了JS实现获取数组中最大值或最小值功能,结合实例形式总结分析了javascript获取数组最大值与最小值的三种常见操作技巧,需要的朋友可以参考下

本文实例讲述了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);

运行结果:

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具http://tools.jb51.net/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容还可查看本站专题:《JavaScript数组操作技巧总结》、《JavaScript字符与字符串操作技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》及《JavaScript错误与调试技巧总结

希望本文所述对大家JavaScript程序设计有所帮助。

相关文章

  • 向fckeditor编辑器插入指定代码的方法

    向fckeditor编辑器插入指定代码的方法

    这篇文章主要向大家分享如何在fckeditor编辑器插入代码操作,这里脚本之家小编就为大家分享一下啊
    2007-05-05
  • 微信小程序开发之实现自定义Toast弹框

    微信小程序开发之实现自定义Toast弹框

    Toast相信对于利用微信小程序开发的朋友们来说都不陌生,有时候官方的样式并不能满足业务要求,怎么办呢,当然有解决办法了。有一个插件可以直接帮我们完成WeToast,这篇文章主要给大家介绍了微信小程序开发之实现自定义Toast弹框的相关资料,需要的朋友可以参考下。
    2017-06-06
  • js字符串操作函数总结及使用方法示例

    js字符串操作函数总结及使用方法示例

    这篇文章主要介绍了js字符串操作函数toString、split、length、indexOf、lastIndexOf、replace、replaceAll、charAt、charCodeAt、contact、slice、substring、substr、match、exec、search、trim、includes
    2023-08-08
  • js实现前端分页页码管理

    js实现前端分页页码管理

    本文主要介绍了js实现前端分页页码管理的具体方法。具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • 微信小程序实现判断是分享到群还是个人功能示例

    微信小程序实现判断是分享到群还是个人功能示例

    这篇文章主要介绍了微信小程序实现判断是分享到群还是个人功能,结合实例形式分析了微信小程序分享与判断功能的实现原理、步骤及相关操作技巧,需要的朋友可以参考下
    2019-05-05
  • 原生小程序封装跑马灯效果

    原生小程序封装跑马灯效果

    这篇文章主要为大家详细介绍了原生小程序封装跑马灯效果,由多条衔接改动得到,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-10-10
  • 微信小程序 拍照或从相册选取图片上传代码实例

    微信小程序 拍照或从相册选取图片上传代码实例

    这篇文章主要介绍了微信小程序 拍照或从相册选取图片上传代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • javascript页面渲染速度测试脚本分享

    javascript页面渲染速度测试脚本分享

    这篇文章主要介绍了javascript页面渲染速度测试脚本,计算浏览器渲染HTML页面所需要的时间,需要的朋友可以参考下
    2014-04-04
  • JS实现异步上传压缩图片

    JS实现异步上传压缩图片

    这篇文章主要为大家详细介绍了JS实现异步上传压缩图片,并立即显示图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • JS动态给对象添加属性和值的实现方法

    JS动态给对象添加属性和值的实现方法

    下面小编就为大家带来一篇JS动态给对象添加属性和值的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10

最新评论