【问题标题】:Get array key in map method在map方法中获取数组键
【发布时间】:2015-11-06 17:37:48
【问题描述】:

我在一个函数中比较两个数组,并希望返回一个数组,每个数组键的值都最高。在我的函数中,我有两个参数都代表一个数组。

数组长度相同,键值为普通索引号

现在我只使用普通的 for 循环:

var array1 = [50, 30, 44, 8];
var array2 = [12, 44, 18, 9];

function createList(arr1, arr2){
    for(var x = 0; x < arr1.length; x++){
        arr1[x] = arr1[x] > arr2[x]?arr1[x]:arr2[x];
    }
    return arr1;
}

var highList = createList(array1, array2);

现在我知道还有其他可能得到这个结果。但是我想知道您是否可以在 map 方法中获取当前键并将其与另一个数组进行比较。

以下内容:

var highList = array1.map(function(num){
    return num > array2[keyOfCurrentMap]?num:array2[keyofCurrentMap];
});

【问题讨论】:

    标签: javascript arrays dictionary


    【解决方案1】:
    var highList = array1.map(function(num, keyOfCurrentMap){
        return num > array2[keyOfCurrentMap]?num:array2[keyofCurrentMap];
    });
    

    传递给the callback for map 的第二个参数是关键。

    【讨论】:

    • 很有魅力,谢谢你帮我解决这个问题。
    • 完成!发布问题后,我必须等待 15 分钟才能接受。再次感谢。
    猜你喜欢
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    • 2015-10-20
    • 1970-01-01
    • 2013-03-10
    • 1970-01-01
    • 2020-12-27
    • 2011-02-16
    相关资源
    最近更新 更多