题解 | #数组最大值#
数组最大值
http://www.nowcoder.com/practice/7b556cd6c4184e7799199f43f18fa5b1
function _max(array) {
// 方法1----------注意这个方法里参数 不是数组形式,而是 单个元素形式
// return Math.max(...array);
// 方法2----------原生js
// let max = 0;
// for(let i in array) {
// array[i] > max ? (max = array[i]) : max;
// }
// return max;
// 方法3----------array.forEach(),注意这个方法 返回值为undefined,粗暴理解就是不改变原数组,
// 也不返回东西,只通过它对数组中每一项去进行某个操作
// let max = 0;
// array.forEach(ele => ele > max ? (max = ele) : max)
// return max;
// 方法4----------array.sort(),注意该方***改变原数组(以下针对纯数字数组)
// 4.1 升序排序:(a-b) > 0,a 排 b 后;
// 4.2 降序排序:(b-a) > 0,b 排 a 前;
// array.sort((a, b) => b - a);
// return array[0];
// 方法5---------array.reduce(),注意该方法 返回单个数值;
// 指定了 初始计算,则数组首项 先作为 currentValue
return array.reduce((pre, cur) => pre > cur ? pre : cur);
}
_max([1, 2, -1, 3])