首页 > 其他分享 >js如何数组去重

js如何数组去重

时间:2024-01-24 19:35:22浏览次数:30  
标签:arr const item uniqueArr 50 js 如何 数组

在 JavaScript 中,有多种方法可以实现数组去重。下面是一些常见的数组去重方法:

使用 Set 数据结构:Set 数据结构存储唯一的值,可以利用它的特性来去除数组中的重复元素。
const arr = [10, 20, 30, 40, 50, 50]; const uniqueArr = [...new Set(arr)]; console.log(uniqueArr);
使用 reduce 和 includes 方法:使用 reduce 方法遍历数组,通过检查累加器中是否已经包含当前元素来决定是否将其添加到结果数组中。
const arr = [10, 20, 30, 40, 50, 50]; const uniqueArr = arr.reduce((result, item) => { if (!result.includes(item)) { result.push(item); } return result; }, []); console.log(uniqueArr);
使用 filter 和 indexOf 方法:使用 filter 方法遍历数组,对于每个元素,通过检查其在结果数组中的索引是否为 0 来决定是否将其添加到结果数组中。
const arr = [10, 20, 30, 40, 50, 50]; const uniqueArr = arr.filter((item, index, self) => { return self.indexOf(item) === index; }); console.log(uniqueArr);
这些方法中的每一种都可以有效地实现数组去重。你可以根据实际需求选择适合的方法。

鹏仔前端 https://www.pjxi.com/

标签:arr,const,item,uniqueArr,50,js,如何,数组
From: https://www.cnblogs.com/tp1996/p/17985688

相关文章

  • vue3中使用animate.css+wow.js
    官网链接:animatewow.js版本声明:"dependencies":{"vue":"^3.3.11","animate.css":"^4.1.1","wow.js":"^1.2.2"},1.安装:npminstallanimate.css--savenpminstallwow.js......
  • sortable.js el-table 树形表 拖拽
    实现的功能:该树形表只有一级子节点该子节点只能在当前父节点中拖拽,不能跨父节点拖拽同时只能展开一个父节点,其他父节点闭合实现的关键点:mounted挂载初始化sortable拖拽完onEnd方法返回的index是整个列表的排序,要扁平化数组调用该方法getTable()后台多返回一个kid,......
  • 如何降低微服务复杂度丨云栖大会微服务主题分享实录
    作者:谢吉宝本文整理自阿里云资深技术专家、中间件负责人谢吉宝在2023云栖大会《极简微服务模式,降低微服务复杂度的最佳实践》的分享2023云栖大会现场当面临复杂的挑战时,"分而治之"的方法往往能取得显著的效果。微服务架构在这方面的贡献尤为突出,它不仅为"分"与"治"这两个环节提供......
  • 用 UNPKG/CDNJS 国内镜像优化网页加载速度
    unpkg.com和cdnjs.cloudflare.com这两个官方域名的加载速度实在令人汗颜。抽了一下午找了些国内能用的高速稳定镜像,批量更换一下就能加速访问了。unpkg用Zstatic的镜像,把原来的unpkg.com换成s4.zstatic.net/npmcdnjs用360或者Zstatic的镜像,把原来的cdnjs.cloudfl......
  • JS中的扩展运算符(...)和剩余运算符(...)
    一、概念在JS中,扩展运算符(spread)是三个点 (...) ,剩余运算符(rest)也是三个点 (...)二、扩展运算符(1)基本使用:扩展运算符的主要作用是将一个数组转为用逗号分隔的参数序列,它好比rest的逆运算//传递数据代替多个字符串的形式functiontest(a,b,c){console.log(a);//1......
  • 如何让你的.NET WebAPI程序支持HTTP3?
    下面我将总结构建Http3的经验,以TokenGateway的项目为例,请注意使用Http3之前你需要知道它的限制,WindowsWindows11版本22000或更高版本/WindowsServer2022。TLS1.3或更高版本的连接。Linux已安装libmsquic包。实现讲解首先我们需要拉取我们的代码gitcloneh......
  • JS复制JPG图片到剪切板
    HTML代码:<buttonid="button"type="primary"class="ui-button">复制JPG图片</button><imgid="image"width="150"src="./mybook.jpg">JS代码:constdoCopyImg2Clipboard=async(image,suc......
  • 如何训练一个“万亿大模型”?
    1.背景近几年,随着“大模型”概念的提出,深度学习模型越来越大,如何训练这些大模型成为一个亟待解决的工程问题。最初的视觉模型只有几百兆的参数量,而现在的语言模型中,动则百亿,千亿的参数量,甚至万亿的大模型也是见怪不怪。如此巨大的参数量将会消耗巨大的存储空间。如下表所示为......
  • 【教程】如何在苹果手机上查看系统文件?
    ​引言苹果手机与安卓手机不同,无法直接访问系统文件夹。但是,如果我们想要查看苹果手机的系统文件,可以借助一些工具来实现。本文将介绍一款名为克魔助手的iOS设备管理软件,它能帮助我们轻松查看苹果手机的系统文件。 连接iPhone到电脑,打开克魔助手,用数据线将iPhone连接到电脑上......
  • 如何追踪和发现内部威胁,以防止员工数据泄露?
    在数字化的时代背景下,数据泄露已经成为企业面临的一大安全威胁。对于保护企业数据,大多数人可能首先想到的是来自网络的威胁,如黑客攻击或者恶意软件。然而,实际上,内部威胁同样不能忽视。员工或合作伙伴有时会无意间或故意泄露敏感数据,造成不可估量的损失。为了防止这种情况发生,企业......