法一:forEach遍历
function _max(array) {
var max = 0;
array.forEach(element => {
if(element > max) {
max = element
}
})
return max
}
法二:sort从小到大排序后返回最后一个元素
// 改变原数组
function _max(array) {
array.sort((a,b) => a - b)
return array[array.length - 1]
// 或 return array.pop() //删除最后一个元素并返回该值
}
注意不可直接array.sort(),其默认将元素转为字符串,比较UTF-16代码单元值,不能准确比较数字。故需要在参数中指定compareFunction。
方法参数(firstElement,secEl),返回值:<0 firEl放在secEl前面;=0不变但不保证;>0 firEl放secEl后
法三:冒泡排序-升序后返回最后一个元素
function _max(array) {
let len = array.length
for(let a = 0; a < len - 1; a++) {
let el = array[a]
for(let b = a + 1; b < len; b++) {
if(el > array[b]) {
let temp = array[a]
array[a] = array[b]
array[b] = temp
}
}
}
return array[len - 1]
}