Math.max(param1,param2) 因为参数不支持数组。 
所以可以根据apply的特点来解决, 
var max = Math.max.apply(null,array),这样就可以轻易的得到一个数组中最大的一项

注:在调用apply的时候第一个参数给了一个null,这个是因为没有对象去调用这个方法,我们只需要用这个方法帮我们运算,得到返回的结果就行,所以就直接传递了一个null过去。

拓展:

1.call()与apply()

区分apply,call就一句话: 
foo.call(this, arg1,arg2,arg3) == foo.apply(this, arguments)==this.foo(arg1, arg2, arg3) 
call, apply都属于Function.prototype的一个方法,它是JavaScript引擎内在实现的,因为属于Function.prototype,所以每个Function对象实例,也就是每个方法都有call, apply属性.既然作为方法的属性,那它们的使用就当然是针对方法的了.

这两个方法是容易混淆的,因为它们的作用一样,只是使用方式不同.

a.functionname.apply(b,arr);
a.functionname.call(b,arg1,arg2……);

call, apply方法区别是,从第二个参数起, call方法参数将依次传递给借用的方法作参数, 而apply直接将这些参数放到一个数组中再传递, 最后借用方法的参数列表是一样的.

        /*
* apply方法:
* 语法:apply(thisObj,[argArray])
* 定义:应用某一对象的一个方法,用另一个对象替换当前对象。
*/
//定义一个人类
function Person(name,age){
this.name = name;
this.age = age;
} //定义一个学生类
function Student(name,age,grade){
Person.apply(this,arguments);
//或者
Person.call(this,name,age)
this.grade = grade;
} var student = new Student("dqf","20","一年级");
console.info("name:"+student.name+"\n"+"age:"+student.age+"\n"+"grade:"+student.grade);

es6中Math对象的拓展:

1、Math.trunc()

该方法用于取出一个小数的小数部分,返回整数部分。

Math.trunc(1.234);  //
Math.trunc(-2.34141); //-2
Math.trunc(3.9); //
//对于非数值,Math.trunc会内部使用Number将其转为数值
Math.trunc("12.87656"); //
//对于空值和无法截取整数的值,返回NaN
Math.trunc("a"); //NaN
Math.trunc(); //NaN
Math.trunc(NaN); //NaN

2、Math.sign()

该方法用来判断一个数到底是正数,负数,还是0。有五中返回值。

Math.sign(23.235);  //
Math.sign(25); //
Math.sign(0); //
Math.sign(0.0); //
Math.sign(-0.0); //-0
Math.sign(-0); //-0
Math.sign(-2); //-1
Math.sign(-2.983958); //-1
Math.sign('a'); //NaN
Math.sign(); //NaN
Math.sign(NaN); //NaN

参数为正数时,返回1;

参数为0时,返回0;

参数为-0时,返回-0;

参数为负数时,返回-1;

参数为其他值时,返回NaN。

Math.max得到数组中最大值的更多相关文章

  1. 转载——JavaScript学习笔记:取数组中最大值和最小值

    转载自:http://www.w3cplus.com/javascript/calculate-the-max-min-value-from-an-array.html. 取数组中最大值 可以先把思路 ...

  2. JavaScript学习:取数组中最大值和最小值

    在实际业务中有的时候要取出数组中的最大值或最小值.但在数组中并没有提供arr.max()和arr.min()这样的方法.那么是不是可以通过别的方式实现类似这样的方法呢?那么今天我们就来整理取出数组中最 ...

  3. js获取数组中最大值,最小值

    遍历方法 var arr =[12,14,34,566,34,98,77] var max = arr[0]; for(var i=0;i<arr.length;i++){ if(max< ...

  4. Java实现 蓝桥杯 算法训练 寻找数组中最大值

    算法训练 寻找数组中最大值 时间限制:1.0s 内存限制:512.0MB 提交此题 问题描述 对于给定整数数组a[],寻找其中最大值,并返回下标. 输入格式 整数数组a[],数组元素个数小于1等于10 ...

  5. 找出数组中最大值and索引

    找出数组中的最大值和和最大值的索引位置..... 第一中方法: /** * 找出数组中最大值和最大值的索引 * @param args */ public static void main(Strin ...

  6. js获取数组中最大值和最小值

    var max = Math.max.apply(null, 数组); 获取最大值 var min = Math.min.apply(null, 数组);获取最小值 一句话获取数组中最大的数,最小数

  7. JavaScript 获取数组中最大值、最小值

    笨方法 Array.prototype.max = function() { var max = this[0]; var len = this.length; for (var i = 1; i & ...

  8. js获取数组中最大值

    1.es6拓展运算符... Math.max(...arr) 2.es5 apply(与方法1原理相同) Math.max.apply(null,arr) 3.for循环 let max = arr[ ...

  9. max取得数组的最大值

    var arr = [1,2,3,4,5,2,2,4,52,5,6,5,4,4]; var maxNum = Math.max.apply(Math,arr); var maxIndex = arr. ...

随机推荐

  1. leetcode难度及频率

                    1 Two Sum 2 5 array sort           set Two Pointers   2 Add Two Numbers 3 4 linked l ...

  2. C#实现DevExpress本地化实例详解

    using System; using System.Collections.Generic; using System.Text; using DevExpress.XtraGrid.Localiz ...

  3. nodejs http代理请求

    一些免费到代理地址 http://www.xicidaili.com/nn https://proxy.l337.tech/txt http://www.66ip.cn/nm.html 以下代码可以测 ...

  4. linode使用apt更新时停止的错误

    使用ubuntu在更新系统时候,有时候会出现这样的问题: 0% [Connecting to security.ubuntu.com (2001:67c:1560:8001::14)] 问了下客户,他 ...

  5. Atitit.Gui按钮与面板---项目规模的评估----文件数统计,结构,代码行数,每类型文件行数.

    Atitit.Gui按钮与面板---项目规模的评估----文件数统计,结构,代码行数,每类型文件行数. 1. Kpi:::  代码行数(注释行数,空白的行数), 方法数,class数 1 2. 过滤器 ...

  6. tornado WebSocket详解

    1.什么是WebSocketwebsocket和长轮询的区别是客户端和服务器之间是持久连接的双向通信.协议使用ws://URL格式,但它在是在标准HTTP上实现的. 2.tornado的WebSock ...

  7. nohu和&

    在第一家公司工作的时候, 我认识了&,在第二家公司工作的时候, 我认识了nohup,  这就是渊源.  随后, 我就一直糊涂用他们, 但并不懂这两个东西. 网上很多地方是乱扯, 瞎复制, 为什 ...

  8. [转] C#与Java的比较

    [转] C#与Java的比较 转自:C#与Java的比较 2015-06-26 目录 一.C#.C++和Java二.语言规范的比较  2.1.简单数据类型  2.2.常量  2.3.公用类的入口点  ...

  9. C++中常函数内部的this指针也是const类型的

    代码中碰到一个奇怪的现象,在同样的函数中调用this指针,结果却有一个无法通过编译 // 读取连接信息 void ThirdWizardPage::ReadConnection() { QFile f ...

  10. lucene4.7学习总结 (zhuan)

    http://blog.csdn.NET/mdcmy/article/details/38167955?utm_source=tuicool&utm_medium=referral ***** ...