获取差异数组中的元素索引

时间:2015-11-20 16:53:47

标签: javascript arrays

我有两个阵列

var valid = ["a", "b"];
var different = ["a", "c", "b"];

找出元素位置不同的最佳方法是什么?只有一个元素可以不同。

在这种情况下,不同的数组只改变一个元素,我想要不同数组的索引( 1 )。

2 个答案:

答案 0 :(得分:1)

有多种方法可以做到这一点。例如,您可以迭代valid数组,当值不匹配时,您就会知道不同值的index。在这种情况下,它是1

Example Here

var valid = ["a", "b"];
var different = ["a", "c", "b"];

valid.forEach(function (value, i) {
  if (value !== different[i]) {
    console.log(i); // 1
  }
});

答案 1 :(得分:0)

返回不同值的索引:

var valid = ['a', 'b'];
var different = ['a', 'c', 'b'];

var diffIndex = valid.findIndex(function (value, index) {
  return value !== different[index];
});

alert('Array differs at index: ' + diffIndex);

请注意,findIndex是ES2015标准的一部分。