Javascript 如何删除基于特定值的数组?

Javascript 如何删除基于特定值的数组?,javascript,Javascript,我有两个数组 var allAuth = [1, 2, 3, 4, 5, 6, 7, 8] let thomasauth = [2, 3, 4, 5, 6, 7, 8] let res = allAuth.filter(f => !thomasauth.includes(f)); 我从allAuth数组返回缺少的匹配值,该值为1 我想从allAuth数组中删除1 我现在有 let filteredArr = allAuth.filter(e => e !== res) 但是这只

我有两个数组

var allAuth = [1, 2, 3, 4, 5, 6, 7, 8]
let thomasauth = [2, 3, 4, 5, 6, 7, 8]

let res = allAuth.filter(f => !thomasauth.includes(f));
我从
allAuth
数组返回缺少的匹配值,该值为1

我想从
allAuth
数组中删除1

我现在有

let filteredArr = allAuth.filter(e => e !== res)
但是这只是给了我allAuth数组,没有任何东西被移除。 我想要的输出应该是

let filteredArr = [2,3,4,5,6,7,8]

有人能帮忙吗?谢谢。

更改
!thomasauth.includes(f)
thomasauth.includes(f)
以便仅过滤包含的项目(在这种情况下,1将被排除在外)

var allAuth=[1,2,3,4,5,6,7,8]
让thomasauth=[2,3,4,5,6,7,8]
设res=allAuth.filter(f=>thomasauth.includes(f));

控制台日志(res)你试过你的代码了吗?您将看到,
res
实际上是一个数组,包含要删除的值(
[1]
),而不是单个标量值

所以我认为你打算这么做:

let filteredArr = allAuth.filter(e => !res.includes(e));
var allAuth=[1,2,3,4,5,6,7,8];
让thomasauth=[2,3,4,5,6,7,8];
让结果=allAuth.filter(val=>thomasauth.indexOf(val)!=-1);
控制台日志(结果)我想从allAuth数组中删除1。我从allAuth数组返回缺少的匹配值,即1。如果你理解了差异,你就会找到答案