JavaScript将数组 [1, 2, 3, 4, 5, 6, 7, 8, 8,9]去重

AiWork开发文档

在官方文档的基础上,进行重新排版和优化。
一个优雅的文档,对于开发体验的提升,是效果显著的。
永久域名:aiwork.wiki

将使用 Set 对象来实现JavaScript数组的去重,Set 是一种集合数据结构,它只允许唯一的值。

去重方法示例

/**
 * 去重数组中的重复元素
 * 
 * @param {Array} array - 要去重的数组
 * @returns {Array} - 返回去重后的新数组
 * @author 飞云
 * @wechat imfeiyun
 * @link  http://www.feiyunjs.com
 */
function removeDuplicates(array) {
    // 使用 Set 来存储唯一值
    const uniqueValues = new Set(array);

    // 将 Set 转换回数组并返回
    return Array.from(uniqueValues);
}

/**
 * 使用示例
 */
const originalArray = [1, 2, 3, 4, 5, 6, 7, 8, 8, 9];
console.log('Original array:', originalArray);

// 调用去重方法
const deduplicatedArray = removeDuplicates(originalArray);
console.log('Deduplicated array:', deduplicatedArray);

代码说明

  1. removeDuplicates 函数:

    • 接收一个参数 array,这是要去重的原数组。
    • 创建一个 Set 对象 uniqueValues,并将原数组作为参数传入。Set 会自动去掉重复的值。
    • 使用 Array.from() 方法将 Set 转换回数组格式。
  2. 示例:

    • 在示例中,我们定义了一个包含重复元素的数组 originalArray,然后调用 removeDuplicates 函数去重,并打印结果。

运行效果

Original array: [1, 2, 3, 4, 5, 6, 7, 8, 8, 9]
Deduplicated array: [1, 2, 3, 4, 5, 6, 7, 8, 9]

其他去重方法

如果你想要其他实现方式,这里还有一个基于 filter() 方法的示例:

/**
 * 去重数组中的重复元素(使用 filter 方法)
 * 
 * @param {Array} array - 要去重的数组
 * @returns {Array} - 返回去重后的新数组
 * @author 飞云
 * @wechat imfeiyun
 * @link  http://www.feiyunjs.com
 */
function removeDuplicatesUsingFilter(array) {
    return array.filter((value, index) => {
        // 仅保留第一次出现的值
        return array.indexOf(value) === index;
    });
}

// 使用示例
const originalArray2 = [1, 2, 3, 4, 5, 6, 7, 8, 8, 9];
console.log('Original array:', originalArray2);

// 调用去重方法
const deduplicatedArray2 = removeDuplicatesUsingFilter(originalArray2);
console.log('Deduplicated array using filter:', deduplicatedArray2);

这个方法通过 filter() 方法保留每个值第一次出现的位置,进而去掉重复元素。

总结

你可以根据自己的需求选择使用 Set 或者 filter() 方法来实现数组去重。两种方法都很简单且有效。

1. 官方交流QQ群,添加多个不批。建议使用安卓手机或电脑申请。
飞云脚本圈: 586333520飞云脚本圈
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » JavaScript将数组 [1, 2, 3, 4, 5, 6, 7, 8, 8,9]去重

企业级大数据智能营销管理系统

了解详情