Math.max/min与数组

Math.max()与Math.min() 无法直接接收数组,接受的应该是一组数(一个一个参数)!

 

解决办法:

1.扩展运算符

  扩展运算符用三个点号表示,功能是把数组或类数组对象展开成一系列用逗号隔开的值

console.log(...[1, 2, 3])  
// 1 2 3  
console.log(1, ...[2, 3, 4], 5)  
// 1 2 3 4 5  
Math.max(...[ObjectArray])

2.apply

Math.max.apply(null,arr);

Math.min.apply(null,arr);

执行Math对象中的max函数,参数为values;

其中apply 函数为JS的内置函数,作用为执行该函数。且只能被函数调用。

apply函数中的第一个参数为函数所属对象,通常为当前页面(this)。第二个参数为传入到函数中的参数数组(必须为数组)。

var add = function(a,b){
return a+b;
}
var args = [2,3];
alert(add.apply(this,args));

 

 

posted @ 2017-02-16 13:05  Ruge  阅读(1873)  评论(0编辑  收藏  举报