js求数组最大值

JavaScript018

js求数组最大值,第1张

求数组最大值的方法有很多。

es6可以直接使用"Math.max(...array)",es5可以用"Math.max.apply(null,array)"。

也可以考虑使用数组排序的方法,从大到小或者从小到大排序,然后取第一个或最后一个值。

如果数组的结构比较复杂,可以用for循环,对数组的值进行判断,求出最大值。

遇到的问题:js里调用函数时传入一个值为 72061132320616256

但是alert这个值一直是72061132320616260

因为:

js的最大安全值:

Number.MAX_SAFE_INTEGER 为 9007199254740991

由上图可以看出,输入的值超出安全值,所以js会自动把超过这个安全值的数转化

原生方法:

function fnmax(array) {

var max = array[0]

for(var i = 1 i < array.length - 1i++) {

if (array[i] > max) {

max = array[i]

}

}

return max

} js内置方法:

Math.max.apply(null,arr) 取数组中的最大值