Victor
Victor

Reputation: 23

Remove object in array

I have a array object and a array.

const arr1=[
    { name: "viet" },
    { name: "hai" },
    { name: "han" }
    ]
const arr2= ["viet", "hai"];

How can i compare and set arr like:

arr = [{name: "han"}]

Upvotes: 0

Views: 59

Answers (2)

Dae Hyeon Mun
Dae Hyeon Mun

Reputation: 536

Try this code :D

const arr1=[
    { name: "viet" },
    { name: "hai" },
    { name: "han" }
    ]
const arr2= ["viet", "hai"];
const result = arr1.filter(item => !arr2.includes(item.name))

console.log(result) // [{name: "han"}]

Upvotes: 2

Wang YinXing
Wang YinXing

Reputation: 278

const arr1=[
    { name: "viet" },
    { name: "hai" },
    { name: "han" }
    ]
const arr2= ["viet", "hai"];
let res = arr1.filter(function (n) {
                    return !this.has(n.name);
                }, new Set(arr2));
                
console.log(res);

Upvotes: 1

Related Questions