简介
在这个实验中,我们将基于 JavaScript 中提供的比较函数来探索数组交集的概念。本实验的目的是教你如何使用 Array.prototype.filter()
和 Array.prototype.findIndex()
来找出两个数组之间的相交值。在本实验结束时,你将能够将此技术应用到自己的项目中,并提高你在 JavaScript 中的编程技能。
This tutorial is from open-source community. Access the source code
💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版
在这个实验中,我们将基于 JavaScript 中提供的比较函数来探索数组交集的概念。本实验的目的是教你如何使用 Array.prototype.filter()
和 Array.prototype.findIndex()
来找出两个数组之间的相交值。在本实验结束时,你将能够将此技术应用到自己的项目中,并提高你在 JavaScript 中的编程技能。
要根据提供的比较函数找出两个数组中都存在的元素,请按以下步骤操作:
打开终端/SSH 并输入 node
开始练习编码。
结合使用 Array.prototype.filter()
和 Array.prototype.findIndex()
以及提供的比较函数来确定相交值。
const intersectionWith = (a, b, comp) =>
a.filter((x) => b.findIndex((y) => comp(x, y)) !== -1);
将两个数组和比较函数作为参数调用 intersectionWith()
函数。
intersectionWith(
[1, 1.2, 1.5, 3, 0],
[1.9, 3, 0, 3.9],
(a, b) => Math.round(a) === Math.round(b)
); // [1.5, 3, 0]
这将根据提供的比较函数返回一个包含两个数组中相交值的数组。
恭喜你!你已经完成了基于函数的数组交集实验。你可以在 LabEx 中练习更多实验来提升你的技能。