我有两个这样的 JSON 数组:
var modelType = [
{ 'id' : 3, 'name': 'eR_Beta'},
{ 'id' : 12, 'name': 'eR_Studio'},
{ 'id' : 6, 'name': 'eR_OFF'},
{ 'id' : 9, 'name': 'eR_Schalte'}
];
var data = [
{id: 12}
{id: 6}
]
我想将这些数组与“id”作为键进行比较,并将不匹配的对象获取到另一个数组,如下所示:
var output = [
{ 'id' : 3, 'name': 'eR_Beta'},
{ 'id' : 9, 'name': 'eR_Schalte'}
]
最佳答案
可以通过 filter() 做到这一点和 some()功能和logical not operator !
:
var modelType = [{
'id': 3,
'name': 'eR_Beta'
},
{
'id': 12,
'name': 'eR_Studio'
},
{
'id': 6,
'name': 'eR_OFF'
},
{
'id': 9,
'name': 'eR_Schalte'
}
];
var data = [{
id: 12
},
{
id: 6
}
]
const result = modelType.filter(f =>
!data.some(d => d.id == f.id)
);
console.log(result);
关于javascript - 如何从javascript中的两个json数组中获取不匹配的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58504910/