tengo
array1 = [{ name: sample1 }, { name: sample2 }, { name: sample3 }]; array2 = [{ name: sample1 }, { name: sample2 }]; Quiero filtrar objetos de array1 que existe en array2 . Entonces necesito tener
[{ name: sample1 }, { name: sample2 }]¿Cómo puedo obtenerlo en javascript?
Puede usar .filter y .some función en JavaScript, aquí está el ejemplo
const array1 = [{ name: "sample1" }, { name: "sample2" }, { name: "sample3" }]; const array2 = [{ name: "sample1" }, { name: "sample2" }]; let Result = array1.filter(function(obj) { return array2.some(function(obj2) { return obj.name== obj2.name; }); }); console.log(Result)Puede usar la desestructuración de objetos, los métodos map() e .includes() como se muestra a continuación:
const array1 = [{ name: "sample1" }, { name: "sample2" }, { name: "sample3" }]; const array2 = [{ name: "sample1" }, { name: "sample2" }]; const filtered = array1.filter( ({name}) => array2.map(o => o.name).includes(name) ); console.log( filtered );