在 JavaScript 中,有多种方法可以从数组中删除重复项:使用 Set 数据结构:const uniqueArray = […new Set(array)]使用 Array.prototype.filter(): const uniqueArray = array.filter((item, index) => array.indexOf(item) === index)使用 Array.prototype.reduce(): const uniqueArray = ar
JavaScript 数组去重方法
在 JavaScript 中,有多种方法可以从数组中删除重复项,获得唯一元素组成的数组。
1. 使用 Set
Set 是一种内置的数据结构,它可以存储唯一值。可以通过以下步骤使用 Set 对数组去重:
const array = [1, 2, 3, 1, 2, 3];const uniqueArray = [...new Set(array)];
登录后复制
uniqueArray 将包含 [1, 2, 3] 的唯一值。
2. 使用 Array.prototype.filter()
filter() 方法可以过滤数组中的元素,仅保留满足指定条件的元素。对于去重,可以使用以下条件函数:
const uniqueArray = array.filter((item, index) => array.indexOf(item) === index);
登录后复制
该条件函数检查每个元素是否是数组中第一次出现。如果是,则保留该元素,否则忽略它。
3. 使用 Array.prototype.reduce()
reduce() 方法可以将数组中的元素累积为一个单一值。对于去重,可以使用以下reduce 函数:
const uniqueArray = array.reduce((acc, item) => { if (!acc.includes(item)) { acc.push(item); } return acc;}, []);
登录后复制
该reduce函数创建一个空数组 acc,然后遍历数组元素,如果 acc 中不包含当前元素 item,则将 item 添加到 acc 中。
4. 使用外循环和内循环
这是最直接但效率较低的方法。使用两个循环来比较数组中的每个元素,并删除重复项:
const uniqueArray = [];for (let i = 0; i < array.length; i++) { let isUnique = true; for (let j = i + 1; j < array.length; j++) { if (array[i] === array[j]) { isUnique = false; break; } } if (isUnique) { uniqueArray.push(array[i]); }}
登录后复制
通过使用上述方法中的一种,您可以从 JavaScript 数组中有效地删除重复项,获得一个包含唯一元素的数组。
以上就是js中数组如何去重的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2675960.html