js---查找数组中的最大值(最小值),及相应的下标

文章随笔,转自:https://www.cnblogs.com/jny1990/p/10984614.html

(1)获取数组最大值(最小值)

复制代码
//获取最大值
function getMax(arr) {
    //假设最大值max 为arr[0]
    var max = arr[0];
    //遍历对比
    for (var i = 0; i < arr.length; i++) {
        //若max小于当前项 说明不是最大值 将当前项的值赋予max 
        // 继续遍历对比找到最大的值
        if (max < arr[i]) {
            max = arr[i];
        }
    }
    return max;
}
复制代码
复制代码
//获取最小值
function getMin(arr) {
    var min = arr[0];
    for (var i = 0; i < arr.length; i++) {
        if (min > arr[i]) {
            min = arr[i];
        }
    }

    return min;
}
复制代码

(2)获取数组最大值(最小值)的下标

复制代码
//获取最大值的下标
function getMaxIndex(arr) {
    var max = arr[0];
    //声明了个变量 保存下标值
    var index = 0;
    for (var i = 0; i < arr.length; i++) {
        if (max < arr[i]) {
            max = arr[i];
            index = i;
        }
    }
    return index;
}
复制代码
复制代码
//获取最小值的下标
function getMinIndex(arr) {
    var min = arr[0];
    //声明了个变量 保存下标值
    var index = 0;
    for (var i = 0; i < arr.length; i++) {
        if (min > arr[i]) {
            min = arr[i];
            index = i;
        }
    }
    return index;
}
复制代码
注:获取数组最大值(最小值)的下标时,当数组中最大值(最小值)有重复项时,返回的index值为数组中第一个最大值(最小值)的下标。
例如:
var arr = [66,3,66,66,3];
//打印结果
console.log(getMax(arr));       //  66
console.log(getMaxIndex(arr));  //  0
console.log(getMin(arr));       //  3 
console.log(getMinIndex(arr));  //  1

 

posted @   小白呀白菜  阅读(11083)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示