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


Posted in Javascript onMarch 02, 2019

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

运行结果:

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

如果引用了别的类库进行开发,害怕类库也用了同名的原型方法,可以在生成函数之前可以进行重名判断:

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));

运行结果:

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

多维数组可以先打散为一维数组再做以上处理。

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);

运行结果:

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

方法三:

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);

运行结果:

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

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

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

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

Javascript 相关文章推荐
扩展String功能方法
Sep 22 Javascript
jQuery与ExtJS之选择实例分析
Aug 19 Javascript
JQuery中判断一个元素下面是否有内容或者有某个标签的判断代码
Feb 02 Javascript
JavaScript中判断整字类型最简洁的实现方法
Nov 08 Javascript
JavaScript+html5 canvas制作的圆中圆效果实例
Jan 27 Javascript
javascript瀑布流布局实现方法详解
Feb 17 Javascript
jQuery animate easing使用方法图文详解
Jun 17 Javascript
JS图片定时翻滚效果实现方法
Jun 21 Javascript
jquery animate动画持续运动的实例
Nov 29 jQuery
vue侧边栏动态生成下级菜单的方法
Sep 07 Javascript
Node.js的进程管理的深入理解
Jan 09 Javascript
JavaScript封闭函数及常用内置对象示例
May 13 Javascript
JS使用队列对数组排列,基数排序算法示例
Mar 02 #Javascript
VUE引入第三方js包及调用方法讲解
Mar 01 #Javascript
JavaScript数据结构与算法之二叉树添加/删除节点操作示例
Mar 01 #Javascript
JavaScript数据结构与算法之二叉树实现查找最小值、最大值、给定值算法示例
Mar 01 #Javascript
Angular7.2.7路由使用初体验
Mar 01 #Javascript
vuex实现及简略解析(小结)
Mar 01 #Javascript
简单两步使用node发送qq邮件的方法
Mar 01 #Javascript
You might like
关于php内存不够用的快速解决方法
2013/10/26 PHP
php数组去重实例及分析
2013/11/26 PHP
php中利用explode函数分割字符串到数组
2014/02/08 PHP
PHP 5.3和PHP 5.4出现FastCGI Error解决方法
2015/02/12 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
2016/01/12 PHP
ThinkPHP3.2.3框架实现的空模块、空控制器、空操作,跳转到错误404页面图文详解
2019/04/03 PHP
php设计模式之适配器模式原理、用法及注意事项详解
2019/09/24 PHP
PHPstorm启用自动换行的方法详解(IDE)
2020/09/17 PHP
javascript中的prototype属性实例分析说明
2010/08/09 Javascript
那些年,我还在学习jquery 学习笔记
2012/03/05 Javascript
jquery插件冲突(jquery.noconflict)解决方法分享
2014/03/20 Javascript
JS中传递参数的几种不同方法比较
2017/01/20 Javascript
浅谈通过JS拦截 pushState和replaceState事件
2017/07/21 Javascript
用npm-run实现自动化任务的方法示例
2019/01/14 Javascript
Vue Autocomplete 自动完成功能简单示例
2019/05/25 Javascript
vue webpack重写cookie路径的方法
2019/07/10 Javascript
在Vue项目中用fullcalendar制作日程表的示例代码
2019/08/04 Javascript
layer弹出层自定义提交取消按钮的例子
2019/09/10 Javascript
解决layui轮播图有数据不显示的情况
2019/09/16 Javascript
ant design中upload组件上传大文件,显示进度条进度的实例
2020/10/29 Javascript
Python自定义scrapy中间模块避免重复采集的方法
2015/04/07 Python
python提取字典key列表的方法
2015/07/11 Python
python获取多线程及子线程的返回值
2017/11/15 Python
详细分析python3的reduce函数
2017/12/05 Python
基于python批量处理dat文件及科学计算方法详解
2018/05/08 Python
python 实现UTC时间加减的方法
2018/12/31 Python
在PyCharm中批量查找及替换的方法
2019/01/20 Python
css3中flex布局宽度不生效的解决
2020/12/09 HTML / CSS
五个2015 年最佳HTML5 框架
2015/11/11 HTML / CSS
日本钓鱼渔具和户外用品网上商店:naturum
2016/08/07 全球购物
Cotton On香港网站:澳洲时装连锁品牌
2018/11/01 全球购物
Crocs欧洲官网:Crocs Europe
2020/01/14 全球购物
什么是Deployment descriptors;都有什么类型的部署描述符
2015/07/28 面试题
最新的互联网创业计划书
2014/01/10 职场文书
高一政治教学反思
2014/01/28 职场文书
HTML页面滚动时部分内容位置固定不滚动的实现
2021/04/14 HTML / CSS