简介
在本实验中,我们将探索如何在不筛选重复值的情况下计算两个数组之间的差异。本实验将指导你完成以下过程:从一个数组创建一个 Set
以获取唯一值,然后在另一个数组上使用 Array.prototype.filter()
仅保留 Set
中不包含的值。在实验结束时,你将对如何在 JavaScript 中处理数组有更深入的理解。
This tutorial is from open-source community. Access the source code
💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版
在本实验中,我们将探索如何在不筛选重复值的情况下计算两个数组之间的差异。本实验将指导你完成以下过程:从一个数组创建一个 Set
以获取唯一值,然后在另一个数组上使用 Array.prototype.filter()
仅保留 Set
中不包含的值。在实验结束时,你将对如何在 JavaScript 中处理数组有更深入的理解。
要找出两个数组之间的差异,请执行以下步骤:
打开终端/SSH 并输入 node
开始编码。
从数组 b
创建一个 Set
,以从 b
中提取唯一值。
在数组 a
上使用 Array.prototype.filter()
,通过 Set.prototype.has()
仅保留不在数组 b
中的值。
以下是代码:
const difference = (a, b) => {
const s = new Set(b);
return a.filter((x) => !s.has(x));
};
示例用法:
difference([1, 2, 3, 3], [1, 2, 4]); // 输出:[3, 3]
恭喜你!你已经完成了“数组差异”实验。你可以在 LabEx 中练习更多实验来提升你的技能。