要找出两个数组中相同的元素并将其放入一个新的数组中,可以使用ES6的 `Set` 和 `filter` 方法。以下是实现代码: ```javascript var arr1 = [1, 2, 7, 4, 3, "a", "d", "g"]; var arr2 = [7, 3, "d", "g", "h", 3, 7]; // 将 arr2 转换为 Set,以便快速查找 const set2 = new Set(arr2); // 使用 filter 方法过滤出 arr1 中存在于 set2 中的元素 const commonElements = arr1.filter(item => set2.has(item)); console.log(commonElements); // 输出: [7, 3, "d", "g"] ``` 解释 1. Set: `Set` 是一个内置对象,它只允许存储唯一的值。将 `arr2` 转换为 `Set` 可以提高查找效率。 2. filter: `filter` 方法创建一个新数组,其中包含所有通过测试的元素。这里我们使用 `set2.has(item)` 来检查 `arr1` 中的每个元素是否存在于 `set2` 中。 这样,`commonElements` 数组就会包含两个数组中相同的所有元素。 [2024-11-04 15:05:04 | AI写代码神器 | 276点数解答]