Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 基于另一个数组从对象数组中筛选数组属性_Javascript_Vue.js - Fatal编程技术网

Javascript 基于另一个数组从对象数组中筛选数组属性

Javascript 基于另一个数组从对象数组中筛选数组属性,javascript,vue.js,Javascript,Vue.js,我想基于另一个数组筛选具有数组属性的对象数组: [ { id: 50, name: 'test1', countries: ['RO','GB'], }, { id: 51, name: 'test2', countries: ['DE', 'RO'], }, { id: 52, name: 'test3', countries: ['DE'], } ] 我想返回一个对象数组,可以按国家数组进行过滤,这意味着如果

我想基于另一个数组筛选具有数组属性的对象数组:

[
  {
   id: 50,
   name: 'test1',
   countries: ['RO','GB'],
  }, {
    id: 51,
    name: 'test2',
    countries: ['DE', 'RO'],
  }, {
    id: 52,
    name: 'test3',
    countries: ['DE'],
  }
]
我想返回一个对象数组,可以按国家数组进行过滤,这意味着如果我想按1,2个国家进行过滤

1. countries: ['RO']

预期产出将是:

一,

二,


使用此函数查找javascript数组中存在的多个值

var containsAll = arr1.every(function (i) { return arr2.includes(i); });
您可以使用
filter()
includes()
方法

var import1=[
{
身份证号码:50,
名称:“test1”,
国家:['RO','GB'],
}, {
id:51,
名称:“test2”,
国家:['德','罗'],
}, {
身份证号码:52,
名称:“test3”,
国家:[“德”],
}
];
var export1=import1.filter(函数(importz){
退货进口国包括(“DE”);
});

控制台日志(export1)
includes应该是一个字符串数组,了解如何过滤它们:array1.filter(object=>object.countries.find(country=>arrayOfCountries.includes(country)))
[
  {
   id: 50,
   name: 'test1',
   countries: ['RO', 'DE' ,'GB'],
  }, {
    id: 51,
    name: 'test2',
    countries: ['DE', 'RO'],
  }
]
[
  {
   id: 50,
   name: 'test1',
   countries: ['RO', 'DE' ,'GB'],
  }, {
    id: 51,
    name: 'test2',
    countries: ['DE', 'RO'],
  }, {
    id: 52,
    name: 'test3',
    countries: ['DE'],
  }
]
var containsAll = arr1.every(function (i) { return arr2.includes(i); });