Javascript 匹配动态创建的关联数组?

Javascript 匹配动态创建的关联数组?,javascript,arrays,matching,Javascript,Arrays,Matching,我需要在javascript中连接多个关联数组,如下所示: array1 = [{model: 1995}, {type: "automatic"}] array2 = [{model: 2002}, {type: "automatic"}] array3 = [{model: 1995}, {type: "automatic"}] array4 = [{model: 2002}, {type: "automatic"}] 我只需要在“model”值匹配的情况下连接数组,因此array1

我需要在javascript中连接多个关联数组,如下所示:

array1 = [{model: 1995}, {type: "automatic"}]

array2 = [{model: 2002}, {type: "automatic"}]

array3 = [{model: 1995}, {type: "automatic"}]

array4 = [{model: 2002}, {type: "automatic"}]
我只需要在“model”值匹配的情况下连接数组,因此array1.concat(array3)。。但是,这些值是动态创建的,我需要一种匹配这些值的方法

我试过:

   if (array1[0].model === array2[0].model) {
     concatenated = array1.concat(array2) }

但是,这并不是在所有数组中循环查找匹配项,它只是匹配它标识为具有相同模型的前两个数组

这就是你想要做的吗

var array1 = [{model: 1995}, {type: "automatic"}];

var array2 = [{model: 2002}, {type: "automatic"}];

var array3 = [{model: 1995}, {type: "automatic"}];

var array4 = [{model: 2002}, {type: "automatic"}];

var all = [array1, array2, array3, array4];

var model1995 = all.filter(function(array) {
  return array[0].model === 1995;
});

var model2002 = all.filter(function(array) {
  return array[0].model === 2002;
});