如何在Javascript中将一个数组的元素与另一个数组的索引进行比较?

Posted

技术标签:

【中文标题】如何在Javascript中将一个数组的元素与另一个数组的索引进行比较?【英文标题】:how to compare the elements of one array to the index of another array in Javascript? 【发布时间】:2016-07-06 22:35:53 【问题描述】:

我正在尝试将数组 (Array1) 的元素与另一个数组 (Array2) 的位置进行比较,并生成一个新数组 (Array3),其中包含 Array2 的元素,其位置等于 Array1 的元素.

var Array1 = [1, 2, 6] // Dynamic array, maxlength= 6 
var Array2 = [6, 8, 9, 3, 5, 2] // dynamic array of length=6
var Array3 = [6, 8, 2] // note that positions are form 1-6 and not 0-5

我怎样才能做到这一点?

【问题讨论】:

那么您的预期结果是什么?你现在的情况是一个空数组吗? Array 3 将是我的预期结果@Rajaprabhu Aravindasamy array1.map(function(key) return array2[key];); - 完成。 array1.map(function(key) return array2[key - 1];); - 完成 @RajaprabhuAravindasamy 是的,错过了基于 1 的部分,哎呀! 【参考方案1】:

你的问题的解决方案是

Array1.map(function(key) return Array2[key - 1];);

key - 1 的使用与您将 Array2 的第一个元素表示为位置“1”有关。

如果您遵循更流行的编程约定,即 Array2 的第一个元素是位置“0”(或 index0),那么解决方案将是

Array1.map(function(key) return Array2[key];);

【讨论】:

以上是关于如何在Javascript中将一个数组的元素与另一个数组的索引进行比较?的主要内容,如果未能解决你的问题,请参考以下文章

如何在弹性框中将一个元素的中心与另一个元素的基线对齐

如何在javascript中将当前日期时间与另一个日期时间进行比较

如何在 Vuejs/Javascript 中将 Object 元素推送到数组中

将一个数组中的数字与另一个数组 Javascript 的索引进行比较

如何在 C# 中将对象数组向上转换为另一种类型的对象数组?

如何使用 Javascript 将元素的内部 HTML 文本替换为数组的一部分