求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 相关文章推荐
Javascript 判断函数类型完美解决方案
Sep 02 Javascript
默认让页面的第一个控件选中的javascript代码
Dec 26 Javascript
JQUBAR1.1 jQuery 柱状图插件发布
Nov 28 Javascript
javascript批量修改文件编码格式的方法
Jan 27 Javascript
Javascript递归打印Document层次关系实例分析
May 15 Javascript
jQuery判断邮箱格式对错实例代码讲解
Apr 12 jQuery
jQuery中ajax获取数据赋值给页面的实例
Dec 31 jQuery
Vue项目中设置背景图片方法
Feb 21 Javascript
node.js环境搭建图文详解
Sep 19 Javascript
微信小程序map组件结合高德地图API实现wx.chooseLocation功能示例
Jan 23 Javascript
在Vue中创建可重用的 Transition的方法
Jun 02 Javascript
关于vue 项目中浏览器跨域的配置问题
Nov 10 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中看实例学正则表达式
2006/12/25 PHP
根据当前时间在jsp页面上显示上午或下午
2014/08/18 Javascript
JQuery删除DOM节点的方法
2015/06/11 Javascript
jquery显示loading图片直到网页加载完成的方法
2015/06/25 Javascript
异步JS框架的作用以及实现方法
2015/10/29 Javascript
VUE axios上传图片到七牛的实例代码
2017/07/28 Javascript
vue页面使用阿里oss上传功能的实例(一)
2017/08/09 Javascript
node.js 发布订阅模式的实例
2017/09/10 Javascript
Mac中安装nvm的教程分享
2017/12/11 Javascript
vue 路由嵌套高亮问题的解决方法
2018/05/17 Javascript
详解在Vue中使用TypeScript的一些思考(实践)
2018/07/06 Javascript
js模拟实现烟花特效
2020/03/10 Javascript
Vue实现跑马灯效果
2020/05/25 Javascript
js实现星星打分效果
2020/07/05 Javascript
Python常用的爬虫技巧总结
2016/03/28 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
2016/06/23 Python
使用PyInstaller将Python程序文件转换为可执行程序文件
2016/07/08 Python
Python SQLite3简介
2018/02/22 Python
在pytorch中查看可训练参数的例子
2019/08/18 Python
opencv3/python 鼠标响应操作详解
2019/12/11 Python
python实现坦克大战
2020/04/24 Python
Python 如何操作 SQLite 数据库
2020/08/17 Python
Python用户自定义异常的实现
2020/12/25 Python
利用Opencv实现图片的油画特效实例
2021/02/28 Python
使用HTML5进行SVG矢量图形绘制的入门教程
2016/02/19 HTML / CSS
小程序瀑布流解决左右两边高度差距过大的问题
2019/02/20 HTML / CSS
校园学雷锋活动月总结
2014/03/09 职场文书
公司门卫岗位职责范本
2014/07/08 职场文书
师德师风事迹材料
2014/12/20 职场文书
工作失误检讨书
2015/01/26 职场文书
2015年护理工作总结范文
2015/04/03 职场文书
毕业生捐书活动倡议书
2015/04/27 职场文书
车辆挂靠协议书
2016/03/23 职场文书
李清照的诗词赏析(20首)
2019/08/22 职场文书
整理Python中常用的conda命令操作
2021/06/15 Python
详解非极大值抑制算法之Python实现
2021/06/28 Python