js中取数组的最大/最小值
文章类型:Javascript
发布者:admin
发布时间:2023-04-13
经常使用数组,会遇到需求,取最大最小值,今天,整理一下方法,最大同理
一:通过Math.min
console.log(Math.min(...arr))
二:通过循环方式,主要是进行对比,如果大/小,则赋值给变量实现
let arr=[10,20,5,100,45,60,75,200,15,20]
let minHeight=arr[0]
let index=0
for(let j=0;j<arr.length;j++){
if(minHeight>arr[j]){
minHeight=arr[j]
index=j
}
}
console.log(minHeight) //5
console.log(index) //2
三:通过内联函数Math.min.apply实现,配合indexOf获取下标
function Smallest(arr) {
return Math.min.apply(null, arr);
}
console.log(Smallest(arr))
console.log(arr.indexOf(Smallest(arr)))
四:通过reduce内联函数本质来运行循环
function Smallest(arr) {
return arr.reduce(function(lowest, next) {
return lowest < next ? lowest :next;
},
arr[0]);
}
console.log(Smallest(arr))
五:通过sort对数组进行排序,然后取第一个值
function Smallest(arr){
return arr.sort(function(a,b){
return a-b
})
}
console.log(Smallest(arr)[0])