从数组中仅删除一个重复项

2024-03-14

我试图只从数组中删除 2 之一,但我的代码删除了所有这些。我的代码如下:

var arr = [2,7,9,5,2]
arr.filter(item => ((item !== 2)));

and:

var arr = [2,7,9,2,2,5,2]
arr.filter(item => ((item !== 2)));

两者都删除所有 2。我考虑过删除重复项,如果只有一个重复项,它就可以工作 - 例如:

Array.from(new Set([2,7,9,5,2]));
function uniq(a) {
 return Array.from(new Set(a)) 
}

但如果存在多个重复项,则会失败,因为它只是将它们全部删除,包括任何其他重复的数字:

Array.from(new Set([2,7,9,9,2,2,5,2]));
function uniq(a) {
 return Array.from(new Set(a)) 
}

有谁知道如何只删除2个之一?感谢您在这里的任何帮助。


你可以使用indexOf方法结合splice.

var arr = [2,7,9,5,2]
var idx = arr.indexOf(2)
if (idx >= 0) {
    arr.splice(idx, 1);
}
console.log(arr);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从数组中仅删除一个重复项 的相关文章

  • 如何确定并打印 jQuery 版本?

    是否有一个 jQuery 函数可以返回当前加载的 jQuery 版本 你可以使用这个 fn jquery or if you re using noConflict jQuery fn jquery 当 jQuery 构建时它会自动更新 定
  • 如何在通过 .ajaxForm() 提交表单之前执行一些操作?

    我正在使用 ajaxForm 框架来发送我的数据 而无需重新加载我的页面 ReplayForm ajaxForm success function data alert Success 现在 我想在提交表单之前检查一些条件 如果条件为假 则
  • 如何判断一个网页是否支持jquery?

    确定网页是否启用 jquery 的最佳方法是什么 如果这是确定它的最佳方法 则使用 jquery 本身 if jQuery jquery object exists jQuery 并不神奇 它本质上只是一个大对象 您可以像检查任何其他对象一
  • Eslint 从另一个文件确定全局变量

    我试图以这样的方式设置 ESLint 使其在对实际目标文件进行 linting 之前解析全局声明文件 这样我就不必将所有确实是全局的函数和变量声明为全局 而是让解析器弄清楚 In 一些 模块 js function do something
  • JQuery datepickers-从开始日期设置结束日期

    使用了两个 Jquery 日期选择器 StartDate 和 EndDate
  • 在随机位置启动 HTML5

    我有一个大约 2 小时长的音轨 我想在我的网站上使用它 我希望它在页面加载时在随机位置开始播放曲目 使用 HTML5 可以吗 我知道您可以使用 element currentTime 函数来获取当前位置 但是如何在完全下载之前获取曲目的总时
  • 如何在不阻止触摸启动的情况下防止“过度滚动历史导航”?

    我正在实现基于滑动的导航 但我在使用 Chrome 时遇到了麻烦 当页面向右拖动时 会触发新实现的功能 过度滚动历史导航 从而导致跳回 到 历史 1 为了防止这种情况 我必须打电话 preventDefault on touchstart
  • 设置双指缩放时精确的滚动位置

    我正在创建一个地图应用程序 它将标记图像放置在画布上并滚动到它 我正在使用浏览器的捏缩放和滚动来放大 缩小地图 然而 我注意到有一些奇怪的行为 我想知道如何解决它 这有点难以解释 但我们开始吧 假设您处于网页的标准缩放级别 无法进一步缩小
  • 访问 nuxt 配置文件中的存储

    我想添加通过 Nuxt 静态生成的动态路由 我定义了一个客户端 服务器端存储asyncData方法 我想将这个存储值 一个数组 映射到我的nuxt config js文件使其成为 动态 静态 路线图nuxt generate命令 但如何访问
  • 如何在 select 和 option 标签中添加 JSON 数据?

    我有这个html代码 div class searchfilter div class searchwrapper div div
  • 为什么这行带有“await”的代码会触发微任务队列处理?

    以下引用是我理解微任务队列处理的主要参考 当 JS 堆栈清空时 就会处理微任务 承诺使用 杰克 阿奇博尔德 https twitter com jaffathecake status 954653170986311680 这对我来说没有意义
  • 检索 css3 缩放元素的宽度/高度

    我正在与 offsetWidth 属性的奇怪之处 我认为 作斗争 这是场景 比方说 我有一个span标签 在我的js中 在某个时刻我执行css3转换 对于这个元素 例如 el set styles transform scale scale
  • 为什么在 JavaScript 中 if([]) 被验证而 [] == false ?

    if false alert empty array is false alert alert 0 if alert empty array is true 他们都会运行警报 Demo http jsfiddle net roine ZFD
  • 如何在 Web 服务器上设置 gzip 压缩?

    我有一个嵌入式网络服务器 总共有 2 兆空间 通常 您使用 gzip 文件对客户端有利 但这会节省我们在服务器上的空间 我读到你可以只 gzip js 文件并将其保存在服务器上 我在 IIS 上测试过 但没有任何运气 为了使这项工作成功 我
  • 如何为我的整个 Node.js 应用程序使用相同的 MySQL 连接?

    我有一个app js 我从那里运行我的整个应用程序 在 app js 内部 我require许多文件中都有代码 对于每个文件 我都这样做 var mysql require mysql var mclient mysql createCon
  • 如何在 webpack 中渲染嵌套的 SASS?

    采取以下CSS MyComponent color blue Button color red 以及以下 React 组件 import React from react import classes from MyComponent sc
  • 如何在画布上所有其他内容后面绘制图像? [复制]

    这个问题在这里已经有答案了 我有一块画布 我想用drawImage在画布上当前内容后面绘制图像 由于画布上已经有内容 我正在使用字面上的画布来创建包含图像的画布 因此我无法真正先绘制图像 所以我无法使用drawImage在我呈现其余内容之前
  • 使用 ref 触发反应 dropzone 不起作用

    我正在实现这个库 https github com felixrieseberg React Dropzone Component https github com felixrieseberg React Dropzone Compone
  • ThreeJS 中阴影的奇怪行为

    所以我有一个 ThreeJS 场景 并且添加了一些球体 多材质 我还添加了定向光 this light new THREE DirectionalLight 0xFFFFFF 1 this light position set 2 10 2
  • 如何映射轮播的子项数组?

    我正在尝试将 Carousel 组件包装在映射对象数组周围作为组件的子级 目前我只能让映射创建映射对象的 1 个子对象 轮播需要像这样

随机推荐

  • “lxd”与 lxc/docker 有何不同?

    问题 lxd 如何在容器内提供完整的操作系统功能 而不仅仅是单个进程 它与 lxc docker 包装器有什么不同 是不是类似于用docker supervisor wrapper脚本启动一个容器 在一个容器中包含多个进程 换句话说 我可以
  • 使用加密密码连接到 gmail(使用 imap 和 javamail)

    我正在尝试使用一个简单的java程序连接到gmail 像这个 https harikrishnan83 wordpress com 2009 01 24 access gmail with imap using java mail api
  • 如何使用带有角度的离子框架制作apk文件

    我在本地目录中创建了简单的应用程序 该应用程序名称是 Ionic Chat master 我怎样才能把它变成apk文件 我已经使用 git 尝试了以下命令 但对我不起作用 npm install g cordova cordova buil
  • 为什么 C# 构造函数行为与 Java 不同,反之亦然?

    给定这个 Java 代码 输出0 and 4 class A A print void print System out println A class B extends A int i Math round 3 5f public st
  • 为什么只有一个核心承担全部负载,如何让其他29个核心承担负载?

    我正在尝试将 Spark 处理的数据推送到 C 的 3 节点集群 我正在向 Cassandra 推送 2 亿条记录 但它失败了 错误如下 下面是我的 Spark 集群配置 Nodes 12 vCores Total 112 Total me
  • 如何使用 CSS 或 JS 使图像变暗而不影响透明度?

    到处建议的调暗图像的正常方法是更改 其不透明度属性并在其下方显示黑色的东西 但是 我的图像具有透明度并且位于白色背景上 所以我想将背景保持在图像白色的透明部分下 只使有颜色的像素变暗 这可以在 CSS 最好 或 JS 中完成吗 编辑 示例图
  • 在单元测试期间我应该模拟哪些功能

    我一直在阅读 Stack Overflow 上的一些文章和帖子 了解何时应该模拟函数 何时不应该模拟函数 但我遇到了一个情况 我不确定该怎么做 我有一个 UserService 类 它使用依赖项注入概念通过其构造函数接收依赖项 class
  • 我应该使用 ScriptSharp

    我正在开发我的第一个 ASP NET MVC 应用程序 我相信 Script 可以帮助我很多 但它找不到支持我发展所需的资源 我找不到 Codeplex 网站 只有一本手册 很好 但还不够 我能找到的教程很少 我知道 Script 用于开发
  • 移动设备上的自动对焦文本字段,但没有键盘?

    作为我的登录和注册表单的一部分 如果出现错误 它将自动聚焦相关字段 其实 事情并不像我想象的那么简单 让我尝试解释一下 基本上 在这个项目中 页面是通过 AJAX 加载的 表格可能包括autofocus属性 这很好用 但在移动设备上它只显示
  • 禁止直接访问图像

    我正在制作一个小家庭相册 打算稍后向其他人开放以存储图像 我将图像上传到 images 然后调整它们大小 3 次 普通视图 缩略图和小版本 并将它们移动到 images thumbs images normal images tiny 然后
  • mysql 加载数据内文件更新

    我目前正在使用 mySQL LOAD DATA INFILE 将 csv 文件插入到我的数据库中 该 csv 文件每天都会下载到服务器 以保持产品数据最新 我想知道的是如何使用新的 csv 更新表并保留没有不同的现有数据 这是我目前的声明
  • scala 中的插入排序实现

    我正在尝试 Scala 我想看看如何在 scala 中实现插入排序 并满足以下要求 嵌套 for 循环 输入数组 Int 如果可能的话 通过引用方式修改函数内容的方法 否则返回 Array Int 如果这不是实现插入排序的 Scala 方法
  • 抓取时如何避免连接节点中的所有文本

    当我从 HTML 或 XML 中抓取多个相关节点来提取文本时 所有文本都会连接成一个长字符串 从而无法恢复单个文本字符串 例如 require nokogiri doc Nokogiri HTML lt
  • sed 仅替换完全匹配

    我不想替换像这样的字符串Europe12 with Europe12 yesturday在一个文件中 不改变Europe12 36文件中也存在的字符串 I tried basename Europe12 sed i s b basename
  • 为什么Matlab中复数共轭转置是默认的

    如果矩阵有复数元素并且我想使用命令将 A 转置为 A gt gt A 为什么设计是这样的a bi转变为a bi 它有什么用 From here http mathworld wolfram com ConjugateTranspose ht
  • 站点根相对路径不起作用

    我不明白这一点 它搞砸了整个网站 因为我使用的是 php 模板 根据我读过的每一篇文章 据说以 开头的链接会让我从根开始 但是 当我以 开头时 它根本不起作用 我的变量位于 public html cis130 textfiles php
  • 将 fgetcsv 响应转换为特定的 json

    我有一个带有标题的 CSV 文件 Description BusinessSurname IsCustomer IsSupplier AddressType Business Address IsInternational 第一排 Cont
  • JSTL、Bean 和方法调用

    我正在开发一个 JSP 我需要调用来自 Bean 的对象的方法 以前版本的页面没有使用JSTL 并且可以正常工作 我的新版本有这样的设置
  • 在 .NET 中加载第一个 sql 连接需要很长时间

    由于某种原因 第一次打开与 SQL Server 数据库的连接需要 7 秒 后续连接需要一秒 知道原因是什么吗 我正在使用 C 和 asp net 编译后 我每次重新启动站点时都会本质上 这意味着每次它需要实际创建 第一个 连接 我知道设置
  • 从数组中仅删除一个重复项

    我试图只从数组中删除 2 之一 但我的代码删除了所有这些 我的代码如下 var arr 2 7 9 5 2 arr filter item gt item 2 and var arr 2 7 9 2 2 5 2 arr filter ite