如何比较数组中的值:

['1', '2', '3', '4']
['2', '1', '4', '1']


就像:

if (1 > 2) return counter++

首先是第一,第二是第二,第三是第三。如果我做循环,我会做很多次:

for (let i = 0; i < arr1.length; i++) {
        for (let j = 0; j < arr2.length; j++) {
            if (Number(arr1[i]) > Number(arr2[j])) {
                counter++;
            }
        }
    }


我只想比较一次,每个键值和每个键值。因此,在此示例中,计数器应为2

最佳答案

只需使用1进行如下所示的循环。由于数组具有相同的长度,因此您可以只使用第一个循环的索引。



var arr1 = ['1', '2', '3', '4'];
var arr2 = ['2', '1', '4', '1'];

for (var i = 0; i < arr1.length; i++) {
  if (arr1[i] > arr2[i]) {
    console.log(arr1[i]);
  }
}

关于javascript - 在2个数组中仅比较键值一次,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55209186/

10-13 02:34