如何在JavaScript中比较两个数组并返回一个表示匹配的新数组

时间:2015-07-08 07:42:47

标签: javascript arrays

有没有办法比较2个数组并返回一个新数组,表明哪些值匹配?

例如

a = ['Africa', 'America', 'Europe']
b = ['Africa', 'Asia', 'Europe']

// need
// c = [true, false, true]
编辑:到目前为止我已经

function mask(arr1, arr2) {
  var arr = [];
  for (var i = 0; i < arr1.length; i++) { 
    arr.push(arr1[i] === arr2[i]);
  }
  return arr;
}

2 个答案:

答案 0 :(得分:3)

只是遍历数组。例如:

var a = ['Africa', 'America', 'Europe'];
var b = ['Africa', 'Asia', 'Europe'];

var index = 0;
var c = [];
while(a.length > index){
  c.push(a[index] === b[index]);
  index++
}

答案 1 :(得分:-1)

您可以使用以下代码比较js中的两个数组

<script type="text/javascript">

function checkForArray(){

var arr1 = [1,5,9,10,12];
var arr2 = [2,3,4,5,9];
var arr3 = [];


for(var i=0;i<arr1.length;i++){

   for(var j=0;j<arr2.length;j++){

     if(arr1[i] == arr2[j]){
         arr3.push(arr1[i]);
     }

  }
}

alert(arr3);
}
</script>