Javascript 检查数组是否具有来自另一个对象数组(ReactJS)的所有ID值

Javascript 检查数组是否具有来自另一个对象数组(ReactJS)的所有ID值,javascript,arrays,reactjs,Javascript,Arrays,Reactjs,我需要一些帮助 我有两个数组,我必须检查第一个数组是否包含React中另一个array对象的所有ID值,然后只返回“True”或“False”。第一个数组如下所示: this.state = { firstArray: ["1"] } this.state = { secondArray: [ {id:1, name: Joe}, {id:2, name: Bill}, {id:3, name: Jason}] 第二个数组如下所示: this.state = { firs

我需要一些帮助

我有两个数组,我必须检查第一个数组是否包含React中另一个array对象的所有ID值,然后只返回“True”或“False”。第一个数组如下所示:

this.state = { firstArray: ["1"] }
this.state = { secondArray: [ {id:1, name: Joe}, {id:2, name: Bill}, {id:3, name: Jason}]
第二个数组如下所示:

this.state = { firstArray: ["1"] }
this.state = { secondArray: [ {id:1, name: Joe}, {id:2, name: Bill}, {id:3, name: Jason}]
我试过类似的东西

compareTwoArrays = () => { 
    this.state.firstArray.includes(x => x === this.state.secondArray.map(item => item.id) 
)}
你知道这怎么可能让它返回“真”或“假”吗


提前感谢。:)

您应该结合使用
每个
包括
功能,如下所示:

const firstArray=[“1”]
const secondArray=[{id:1,name:Joe},{id:2,name:Bill},{id:3,name:Jason}]
const condition=firstArray.every(id=>secondArray.includes(obj=>obj.id==id))
这将测试第一个数组中的每个项在第二个数组中是否有对应的对象

编辑: 如果你需要做的是另一种方式,那么解决方法是

const firstArray=[“1”]
const secondArray=[{id:1,name:Joe},{id:2,name:Bill},{id:3,name:Jason}]
const condition=secondArray.every(obj=>firstArray.includes(id=>obj.id==id))
您可以将
.some()
一起使用。