You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript求两数组差异:如何获取第二个数组独有的元素

获取第二个数组中独有的元素

你当前的代码是对field1执行过滤逻辑,筛选出field1里不存在于field2的元素,所以得到的结果是['two', 'four'],和你想要的field2独有元素不符。

要得到field2中独有的元素,只需把过滤对象换成field2,判断元素是否不在field1中即可:

// 得到包含独有元素的数组
console.log(field2.filter(x => !field1.includes(x))); // 输出: ['six']

// 直接获取单个独有元素(如果确定只有一个)
console.log(field2.filter(x => !field1.includes(x))[0]); // 输出: six

如果数组元素数量较多,使用Array.includes()的查找效率会偏低,推荐将field1转换为Set,利用Set.has()的O(1)查找性能优化:

const field1Set = new Set(field1);
console.log(field2.filter(x => !field1Set.has(x))[0]); // 输出: six

内容的提问来源于stack exchange,提问作者Shibbir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 21:10:24