求js数组的最大值和最小值的四种方法


Posted in Javascript onMarch 03, 2017

给定数组[54,65,43,21,12,34,45,58,97,24],求其最大值和最小值?

定义数组

var ary = [54,65,43,21,12,34,45,58,97,24];

1、字符串拼接法

利用toString和join把数组转换为字符串,再和Math的max和min方法分别进行拼接,最后执行eval方法

var maxN = eval("Math.max(" + ary.toString() + ")");
var minN = eval("Math.min(" + ary.toString() + ")");

或者

var maxN = eval("Math.max(" + ary.join() + ")");
var minN = eval("Math.min(" + ary.join() + ")");

2、排序法

先把数组从小到大排序,数组第一个即为最小值,最后一个即为最大值

ary.sort(function(a,b){return a-b;});
var minN = ary[0];
var maxN = ary[ary.length-1];

3、假设法

假设数组第一个为最大(或最小值),和后边进行比较,若后边的值比最大值大(或比最小值小),则替换最大值(或最小值)

var maxN = ary[0];
var minN = ary[0];
for(var i=1;i<ary.length;i++){
  var cur = ary[i];
  cur>maxN ? maxN=cur : null;
  cur<minN ? minN=cur : null;
}

4、Math的max和min方法

使用apply方法使数组可以作为传递的参数

var maxN = Math.max.apply(null,ary);
var minN = Math.min.apply(null,ary);

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
理清apply(),call()的区别和关系
Aug 14 Javascript
鼠标焦点离开文本框时验证的js代码
Jul 19 Javascript
表单元素与非表单元素刷新区别详细解析
Nov 06 Javascript
通过onmouseover选项卡实现img图片的变化
Feb 12 Javascript
JS实现的打字机效果完整实例
Jun 20 Javascript
微信小程序 配置文件详细介绍
Dec 14 Javascript
Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’
Jan 03 Javascript
解决vue打包项目后刷新404的问题
Mar 06 Javascript
微信小程序学习笔记之本地数据缓存功能详解
Mar 29 Javascript
vue element 生成无线级左侧菜单的实现代码
Aug 21 Javascript
浅谈layui 数据表格前后台传值的问题
Sep 12 Javascript
解决vue-cli@3.xx安装不成功的问题及搭建ts-vue项目
Feb 09 Javascript
jQuery控制元素隐藏和显示
Mar 03 #Javascript
jQuery插件FusionCharts实现的3D柱状图效果实例【附demo源码下载】
Mar 03 #Javascript
jQuery插件FusionCharts实现的2D饼状图效果【附demo源码下载】
Mar 03 #Javascript
angular+bootstrap的双向数据绑定实例
Mar 03 #Javascript
jQuery插件FusionCharts绘制的3D饼状图效果实例【附demo源码下载】
Mar 03 #Javascript
js实现二级导航功能
Mar 03 #Javascript
js实现简单的获取验证码按钮效果
Mar 03 #Javascript
You might like
Php注入点构造代码
2008/06/14 PHP
两种设置php载入页面时编码的方法
2014/07/29 PHP
Codeigniter控制器controller继承问题实例分析
2016/01/19 PHP
PHP7新特性foreach 修改示例介绍
2016/08/26 PHP
基于jquery实现的图片在各种分辨率下未知的容器内上下左右居中
2014/05/11 Javascript
jQuery控制cookie过期时间的方法
2015/04/07 Javascript
js限制文本框只能输入中文的方法
2015/08/11 Javascript
ComboBox(下拉列表框)通过url加载调用远程数据的方法
2017/08/06 Javascript
three.js实现3D视野缩放效果
2017/11/16 Javascript
浅谈mvvm-simple双向绑定简单实现
2018/04/18 Javascript
vue cli2.0单页面title修改方法
2018/06/07 Javascript
使用jquery DataTable和ajax向页面显示数据列表的方法
2018/08/09 jQuery
JavaScript中set与get方法用法示例
2018/08/15 Javascript
vue 使某个组件不被 keep-alive 缓存的方法
2018/09/21 Javascript
Scrapy使用的基本流程与实例讲解
2018/10/21 Python
如何用Python来搭建一个简单的推荐系统
2019/08/07 Python
Python3.6实现根据电影名称(支持电视剧名称),获取下载链接的方法
2019/08/26 Python
jupyter notebook参数化运行python方式
2020/04/10 Python
Django ORM实现按天获取数据去重求和例子
2020/05/18 Python
Python+PyQt5+MySQL实现天气管理系统
2020/06/16 Python
Python过滤序列元素的方法
2020/07/31 Python
Python3如何使用多线程升程序运行速度
2020/08/11 Python
浅析Python 责任链设计模式
2020/09/11 Python
基于CSS3实现图片模糊过滤效果
2015/11/19 HTML / CSS
canvas实现俄罗斯方块的方法示例
2018/12/13 HTML / CSS
马来西亚在线健康商店:Medipal Malaysia
2020/04/13 全球购物
网吧收银员岗位职责
2013/12/14 职场文书
教育科研先进个人材料
2014/01/26 职场文书
教师通用专业自荐书范文
2014/02/11 职场文书
大学生党员个人对照检查材料范文
2014/09/25 职场文书
2014年团支部工作总结
2014/11/17 职场文书
2015年小学教导处工作总结
2015/05/26 职场文书
国庆放假通知怎么写
2015/07/30 职场文书
《祁黄羊》教学反思
2016/02/20 职场文书
Python打包为exe详细教程
2021/05/18 Python
SpringBoot项目部署到阿里云服务器的实现步骤
2022/06/28 Java/Android