Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从对象获取数组差异的最佳方法是什么?_Javascript_Jquery - Fatal编程技术网

Javascript 从对象获取数组差异的最佳方法是什么?

Javascript 从对象获取数组差异的最佳方法是什么?,javascript,jquery,Javascript,Jquery,我有一个值数组:[“1”、“2”、“3”],它基本上包含存储在此对象数组中的记录的引用: [ { id: 1, name: "John" }, { id: 2, name: "Patrick" }, { id: 3, name: "Jack" }, { id: 4, name: "Paula" }, { id: 5, name: "Sarah" } ] 我想从对象数组返回缺少的引用,因此结果将是:4,5。到目前为止,我实现的是从html中可用的所有

我有一个值数组:
[“1”、“2”、“3”]
,它基本上包含存储在此对象数组中的记录的引用:

[
    { id: 1, name: "John" },
    { id: 2, name: "Patrick" },
    { id: 3, name: "Jack" },
    { id: 4, name: "Paula" },
    { id: 5, name: "Sarah" }   
]
我想从对象数组返回缺少的引用,因此结果将是:
4,5
。到目前为止,我实现的是从html中可用的所有
select
中获取第一个数组的所有选定值:

var selected_options = $('.options-picker')
    .map(function() { return this.value}).get();
这将返回
1、2、3
。如何从对象数组中提取
4、5

提前感谢。

使用和对照数组中的值检查对象ID

const数据=[
{id:1,名字:“约翰”},
{id:2,名字:“Patrick”},
{id:3,名字:“杰克”},
{id:4,姓名:“Paula”},
{id:5,名字:“Sarah”}
];
常量项=[1,2,3];
const out=data.filter(obj=>!items.includes(obj.id));
控制台。注销使用和对照数组中的值检查对象ID

const数据=[
{id:1,名字:“约翰”},
{id:2,名字:“Patrick”},
{id:3,名字:“杰克”},
{id:4,姓名:“Paula”},
{id:5,名字:“Sarah”}
];
常量项=[1,2,3];
const out=data.filter(obj=>!items.includes(obj.id));
控制台。注销这样就可以了

var a=[
    { id: 1, name: "John" },
    { id: 2, name: "Patrick" },
    { id: 3, name: "Jack" },
    { id: 4, name: "Paula" },
    { id: 5, name: "Sarah" }   
]
var b=['1', '2', '3'];
a.forEach((e)=>{
if(b.indexOf(e.id.toString())==-1)
{
b.push(e.id);
}
})
alert(b)
这就行了

var a=[
    { id: 1, name: "John" },
    { id: 2, name: "Patrick" },
    { id: 3, name: "Jack" },
    { id: 4, name: "Paula" },
    { id: 5, name: "Sarah" }   
]
var b=['1', '2', '3'];
a.forEach((e)=>{
if(b.indexOf(e.id.toString())==-1)
{
b.push(e.id);
}
})
alert(b)