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

Posted 小白呀白菜

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

 

以上是关于js---查找数组中的最大值(最小值),及相应的下标的主要内容,如果未能解决你的问题,请参考以下文章

JS获取数组最大值、最小值及长度的方法

js数组求和及最大值方法

C语言丨如何查找数组(序列)中的最大值或者最小值?

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

需要帮助编写一个函数来查找 N 维数组 C++ 中的最大值和最小值

js中如何快速获取数组中的最大值最小值