在 Javascript/jQuery 中从数组中删除多个元素

2024-04-21

我有两个数组。第一个数组包含一些值,而第二个数组包含应从第一个数组中删除的值的索引。例如:

var valuesArr = new Array("v1","v2","v3","v4","v5");   
var removeValFromIndex = new Array(0,2,4);

我想删除索引中存在的值0,2,4 from valuesArr。我以为是本土人splice方法可能会有所帮助,所以我想出了:

$.each(removeValFromIndex,function(index,value){
    valuesArr.splice(value,1);
});

但这没有用,因为每次之后splice,中的值的索引valuesArr是不同的。我可以通过使用临时数组并将所有值复制到第二个数组来解决这个问题,但我想知道是否有任何本机方法可以传递多个索引以从数组中删除值。

我更喜欢 jQuery 解决方案。 (不确定是否可以使用grep这里)


总有那么朴素的旧事for loop:

var valuesArr = ["v1","v2","v3","v4","v5"],
    removeValFromIndex = [0,2,4];    

for (var i = removeValFromIndex.length -1; i >= 0; i--)
   valuesArr.splice(removeValFromIndex[i],1);

经过removeValFromIndex以相反的顺序,你可以.splice()不会弄乱尚未删除的项目的索引。

请注意,在上面我使用了带有方括号的数组文字语法来声明两个数组。这是推荐的语法,因为new Array()使用可能会令人困惑,因为它根据您传入的参数数量做出不同的响应。

EDIT:刚刚看到您对另一个关于索引数组不一定按任何特定顺序的答案的评论。如果是这种情况,请在开始之前将其按降序排序:

removeValFromIndex.sort(function(a,b){ return b - a; });

并遵循任何循环 /$.each()/等等你喜欢的方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Javascript/jQuery 中从数组中删除多个元素 的相关文章

  • 使用 Node.js 构建网站的最佳实践

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 我想知道如何使用 Node js 从头开始 开发一个网站 我明白我怎么能possibly
  • 为什么 window 与 Internet Explorer 中的 window.self 不同?

    关于我如何遇到这个问题有一个复杂的背景故事 但为什么self属性不完全等于窗口本身 在 Safari 和 Firefox 及其朋友中 结果如我所料 gt window window self true gt window window se
  • 想要动态处理与分页相关的页码显示:ReactJS

    我有一些分页逻辑工作得很好 唯一的问题是我只能让它显示并固定数量的页面可供选择 现在我已经把它放到了 5 页 但我希望它能够根据总记录动态更改 假设我有 100 条记录 每页限制为 10 条 将有 10 页 现在我只能让它以这种方式显示 第
  • 本地推送通知到在应用程序内运行 JS 代码的 Win8 Live Tile

    我正在尝试将更新发送到我的应用程序的磁贴 当应用程序运行时 这可以正常工作 例如 当用户单击按钮时 我可以轻松地将磁贴更新通知发送到磁贴 我无法解决的是当应用程序无法运行时如何更新磁贴 我找到的唯一选择是使用以下命令从远程 Web 服务器拉
  • JavaScript 验证和 PHP 验证?

    我正在使用 jquery 验证插件来验证空表单 我还应该在 PHP 中检查一下以确保 100 正确吗 或者用 javascript 验证就可以了 谢谢 您应该始终在服务器上进行验证 如果用户以某种方式不使用 Javascript 提交表单
  • 按下回车键时不刷新页面

    我遇到了一些问题 只要表单中有输入 回车键就会触发页面刷新 下面的代码 如果按下回车并且文本区域 input 中没有输入任何文本 则不会刷新页面 但是如果按下回车并且 input中有输入或者光标位于文本区域 我不确定是什么触发了它 因为 s
  • ReactTransitionGroup 不适用于 React-redux 连接组件

    我正在开发一个更大的项目 但我创建了这个简短的示例来说明问题 如果我使用Box组件 它的工作原理 它在控制台中输出componentWillEnter and componentWillLeave当我们点击按钮时 如果我使用BoxConta
  • IE 中的 XPath 查询使用从零开始的索引,但 W3C 规范是从一开始的。我应该如何处理差异?

    问题 我正在转换目前仅适用于 Internet Explorer 的相对较大的 Javascript 代码 以便使其也适用于其他浏览器 由于代码广泛使用 XPath 我们做了一些兼容性功能以使事情变得更容易 function selectN
  • onclick 事件中未调用函数

    我想在每个 YouTube 链接的末尾添加一些 HTML 以在 litebox 中打开播放器 到目前为止 这是我的代码 document ready function var valid url new RegExp youtube com
  • JavaScript RegEx:不同的结果:使用字符串和使用正则表达式“文字”构建模式?

    使用 RegExp 文字与字符串之间有什么区别吗 http jsfiddle net yMMrk http jsfiddle net yMMrk String prototype lastIndexOf function pattern p
  • 如何始终将焦点保持在文本框中

    我创建了一个包含两个 div 的 HTML 页面 左侧的 div 页面的 90 是 ajax 结果的目标 右侧的 div 页面的 10 包含一个文本框 该页面的想法是在文本框中输入零件编号 通过条形码扫描仪 并显示与该零件编号匹配的绘图 显
  • 改变 JavaScript 中的顶部填充

    以下是我在 css 中设置顶部填充的方法 body font size font size px margin 0 padding 100px 0 20px 0 width 100 important 如何使用最简单的 javascript
  • 如何使用 JavaScript 或 jQuery 克隆 HTML 元素的样式对象?

    我正在尝试克隆元素的样式对象 这应该允许我在更改后重置所述元素的样式 例如 el style left 50px curr style left 50px Modify the elements style The cloned style
  • 使用 next.js 进行服务器端渲染与传统 SSR

    我非常习惯 SSR 意味着页面得到完全刷新并从服务器接收完整 HTML 的方法 其中根据后端堆栈使用 razor pub other 进行渲染 因此 每次用户单击导航链接时 它只会向服务器发送请求 整个页面将刷新 接收新的 HTML 这就是
  • 使用 Enzyme 测试 `React.createRef` api

    我想测试下面的类 它使用React createRef api 不过 快速搜索并没有发现任何这样做的例子 有人成功过吗 我该如何嘲笑裁判 理想情况下我想使用shallow class Main extends React Component
  • react-native - 图像需要来自 JSON 的本地路径

    你好社区 我正在react native中开发一个测试应用程序 并尝试从本地存储位置获取图像 我实际在做什么 我将图像直接链接源提供给 var 并在渲染函数中调用此方法 react 0 14 8 react native 0 23 1 np
  • Flot 库将 y 轴设置为最小值 0 和最大值 24

    如何将 y 轴设置在 0 到 24 的范围内 这是我的代码 j plot j placeholder d1 xaxis mode time min new Date 2010 11 01 getTime max new Date 2011
  • 如何从 json 文件创建模型? (ExtJS)

    这是我想使用 json 文件创建的模型 Ext define Users extend Ext data Model fields name user id type int name user name type string 为了根据服
  • 将数组从 jquery ajax 传递到代码后面

    我必须将二维数组传递给在asp net网页代码后面编写的页面方法我有一个变量objList作为二维数组 我使用以下代码来实现此目的 但没有成功 并且未调用页面方法 脚本语言 function BindTable objList ajax u
  • 没有输入的 jQuery 日期选择器

    我有一个相当复杂的网络应用程序 我想向其中添加一些日期选择 UI 我遇到的问题是我无法从文档中弄清楚如何真正控制日期选择器的出现方式和时间 不涉及任何表单元素 不 我不会添加秘密表单字段 因此简单的开箱即用方法根本行不通 我希望有人可以提供

随机推荐

  • Jawbone UP API oAuth 和访问令牌

    我今天开始深入研究 Jawbone 的 UP API 整个身份验证过程中一切似乎都很顺利 问题是 一旦我取回访问令牌 它始终是相同的令牌 它在我的任何请求中都不起作用 并且我无法使用刷新令牌端点更改它 oAuth 设置 url params
  • 提高谷歌地图绘制长路径的性能

    这个问题和这个不一样另一个 https stackoverflow com questions 7503848 improving google maps performance因此 我观察到原生谷歌地图应用程序在地图上绘制很长的距离 当缩
  • PyQt QtWebKit loadFinished 未调用

    我有这个脚本 当它准备好时我想用它做更多的事情 from PyQt4 import QtCore QtGui QtWebKit class WebViewCreator def init self self view QtWebKit QW
  • 为什么 JavaScript 换行符在 HTML 中不起作用?

    我有以下内容 你们可能都知道 n不起作用 我必须使用 br 反而 如果我链接到外部 它也不起作用 js文件 这是我的问题 为什么不 n work 为什么 br 甚至工作 脚本标签内的所有内容难道不应该是严格的 JavaScript 而不是
  • openaigym env.P,AttributeError“TimeLimit”对象没有属性“P”

    我目前正在阅读 Sudharsan Ravichandiran 的 Python 强化学习实践 在我遇到的第一个示例中 遇到了以下 AttributeError AttributeError TimeLimit object has no
  • 将文本+图标组合成一个自动换行的小部件

    我正在尝试为我的应用程序创建一个帮助页面 我想简单地写 按 ICON 刷新分数 或在设置抽屉中启用自动刷新 其中 ICON 是 Icons refresh 如果屏幕不适合 则将整个内容自动换行 如果都是文本 我会简单地将其包装在灵活的小部件
  • 如何修复这个损坏文件的 PHP 下载脚本?

    我有一个强制下载脚本 可以在 PDF 和纯文本中产生良好的结果 并且在 ZIP 存档中半正常 它们在 Windows 中工作 而不是在 Linux 中工作 但是 应用程序文件和图像都失败 这些构成了我必须处理的绝大多数文件 正如我在此处看到
  • Django ORM 能否以与后端无关的可靠方式存储无符号 64 位整数(又名 ulong64 或 uint64)?

    我见过的所有文档都暗示你might能够做到这一点 但没有任何官方 w r t ulong64 uint64 字段 在这个领域有一些现成的选项看起来很有前途 BigIntegerField 几乎 但签名 PositiveIntegerFiel
  • Bootstrap4使卡头高度相同

    以 Bootstrap 4 的定价模板为例 假设我有不同文本长度的卡片标题 因此在某些屏幕分辨率下 卡片标题的高度会变得不同 我想确保它们始终具有相同的高度 div class container div class card deck m
  • ERROR 发送和传输仅适用于应付地址类型的对象,不适用于地址

    function finalizeRequest uint index public restricted Request storage request requests index require request approvalCou
  • HTML/ CSS:A href 超出链接图像 - 如何避免?

    我将三个 HTML 元素排成一行使用内联块 https stackoverflow com questions 13290085 basic html place images in one row with same distance f
  • php的password_hash和password_verify看了一遍还是不行

    UPDATE所以这是一个令人尴尬的愚蠢承认 但问题是我存储在数据库中的哈希值是 密码 的哈希值包括引号 我写的查询没有问题 问题出在椅子和键盘之间 所以这是一个经常被问到的问题 我查遍了 stackoverflow 和 google 试图找
  • Delphi - 检测我的应用程序是否打开了模式对话框

    我有一个 Delphi 2006 应用程序 当检测到错误情况时 它会弹出模式警报对话框 由于对错误条件的检查是在空闲处理程序中完成的 因此如果恰好显示了另一个模式对话框 则该对话框可能会在另一个模式对话框的顶部弹出 这可能会导致用户感到困惑
  • 从 PostgreSQL 数据库检索评论

    我正在 Postgres 数据库上运行一个项目 需要检索数据库中列的注释以用作表标题等 我已经看到有几个内置函数 pg 描述 http www postgresql org docs 9 1 static catalog pg descri
  • ruby/rails:扩展或包含其他模块

    我将模块分开 以便它们更易于阅读和搜索 lib features running rb walking rb features rb 他们有 lib features running rb module Features Running e
  • 奇怪的Java时区日期转换问题

    我想转换ms since 1970 timestamp到带有时区的日期 德国 这里有两种有效的代码变体 至少 我记得使用过它并且它有效 import java text SimpleDateFormat import java util C
  • jQuery异步函数调用,无AJAX请求

    这看起来很愚蠢 但我找不到如何使用 jQuery 进行不涉及某些服务器端请求的异步函数调用 我有一个缓慢的函数 它会遍历大量 DOM 元素 并且我希望浏览器在该函数运行时不会冻结 我想在调用慢速函数之前显示一个小指示器 然后当慢速函数返回时
  • excel+powerpoint 如何决定重新缩放粘贴为图像的范围?

    我注意到 当您复制 Excel 中的范围 复制为图片 如屏幕所示 并将其粘贴到 PowerPoint 中时 生成的图像不会 100 缩放为原始图像 右键单击图像 转到格式设置并转到尺寸以查看比例信息 此外 这种缩放比例在不同的计算机上有所不
  • 如何使用 C API 创建 datetime64 对象的 Numpy 数组?

    我需要从 C C 代码创建 numpy datetime64 对象的数组 正如你所看到的NPY LONGLONG and NPY VOID我做到了 我需要做同样的事情NPY DATETIME type PyObject arr1 PyArr
  • 在 Javascript/jQuery 中从数组中删除多个元素

    我有两个数组 第一个数组包含一些值 而第二个数组包含应从第一个数组中删除的值的索引 例如 var valuesArr new Array v1 v2 v3 v4 v5 var removeValFromIndex new Array 0 2