Предполагается, что вы хотите отфильтровать объекты в массиве a
, которые имеют по крайней мере одно значение в c
, которое существует в массиве b
.
Вы можете использовать Array.filter , Array.some & Array.includes
let a=[{a:1,b:3,c:[1,2,6]},{a:3,b:10,c:[2,5,4]},{a:4,b:3,c:[7,12,6]},{a:4,b:12,}];
let b=[2,6];
let result = a.filter(v => v.c && v.c.some(v1 => b.includes(v1)));
console.log(result);
Вы можете использовать lodash следующим образом
let a=[{a:1,b:3,c:[1,2,6]},{a:3,b:10,c:[2,5,4]},{a:4,b:3,c:[7,12,6]},{a:4,b:12,}];
let b=[2,6];
let result = _.filter(a, v => v.c && _.some(v.c, c => _.includes(b,c)));
console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.min.js"></script>