javascript array.splice() 不删除数组中的元素?

2023-12-14

我有一个remove[]数组,其中包含数据数组中所有值为0的元素的所有索引位置(如下所示)。

数据数组:

Retail,1,Utilities,1,Food & Restaurant,3,No Data,4,Construction,0,Non-profit,1,Financial Services,12,Technology,2,Law,3,Religion,3,Retired,2,Insurance,0,Real Estate,2,Audit,3,Business Organizations,3,Media & Marketing,0,Education,3,Transportation,0,Manufacturing,0,Entertainment & Sports,0,Architecture & Engineering,0,Cultural Institutions,0,Government,0,Banking,0,Health Care,0,Business Services,0

我的 JavaScript

   var remove =  [];          
    $.each(options.series[0].data, function(index, item) {
    if (options.series[0].data[index][1] == 0)
    {                    
        //options.series[0].data.splice(index,1);  
        remove[index] = index;                                      

    }

    for (i=0; i<=remove.length; i++)
    {
    //alert(remove);                
    if (remove[i] != undefined)
        options.series[0].data.splice(remove[i],1);

    }   

splice() 后的数据数组。很多0的元素仍然存在。

Retail,1,Utilities,1,Food & Restaurant,3,No Data,4,Non-profit,1,Financial Services,12,Technology,2,Law,3,Religion,3,Retired,2,Insurance,0,Audit,3,Business Organizations,3,Media & Marketing,0,Education,3,Manufacturing,0,Entertainment & Sports,0,Cultural Institutions,0,Banking,0,Business Services,0

如果我更改拼接以包含替换元件

options.series[0].data.splice(remove[i],1,'removed');

所有 0 元素均从数据数组中删除。嗯?

Retail,1,Utilities,1,Food & Restaurant,3,No Data,4,removed,Non-profit,1,Financial Services,12,Technology,2,Law,3,Religion,3,Retired,2,removed,Real Estate,2,Audit,3,Business Organizations,3,removed,Education,3,removed,removed,removed,removed,removed,removed,removed,removed,removed

如何删除数据数组中的所有 0 元素?


每次删除一个索引时,所有进一步缓存的索引都会变得过时,因为从该点开始的数组都会重新索引。

结果,您在第一个项目之后删除了错误的项目。

你应该迭代remove而是相反的数组。

var i = remove.length;
while (i--) {
    if (remove[i] != undefined)
        options.series[0].data.splice(remove[i],1);
}   

此外,您还可以提高性能并摆脱undefined测试一下你是否简单地.push()每个索引进入remove大批...

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

javascript array.splice() 不删除数组中的元素? 的相关文章

  • 如何将内联 JavaScript 与 Express/Node.js 中动态生成的内容分开?

    对于具有几年 Web 开发经验但没有找到答案的人来说 这是一个有点菜鸟的问题程序员堆栈交换 or Google 我决定在这里问一下 我在用Express网络框架Node js 但这个问题并不特定于任何 Web 框架或编程语言 以下是从数据库
  • 摩卡 - Chai Karma“套件未定义”

    我对 jscript tdd 很陌生 遇到了问题 希望有人能告诉我我在做什么 在浏览器中运行测试 通过 HTML 文件 一切正常 通过节点和业力运行它们我得到以下异常 我想在 node js 主机的 karma 中使用 Mocha 和 Ch
  • focusout 事件后,Mouseleave 事件在 Firefox 中无法持续触发

    我正在运行以下代码
  • Draggable JS Bootstrap 模式 - 性能问题

    对于工作中的项目 我们在 JavaScript 中使用 Bootstrap Modal 窗口 我们想让一些窗口可移动 但我们遇到了 JQuery 的性能问题 myModal draggable handle modal header Exa
  • 有没有办法使用 Rspec/Capybara/Selenium 将 javascript console.errors 打印到终端?

    当我运行 rspec 时 是否可以让 capybara selenium 向 rspec 报告任何 javascript console errors 和其他异常 我有一大堆测试失败 但当我手动测试它时 我的应用程序正在运行 如果不知道仅在
  • 防止 iOS 键盘在 cordova 3.5 中滚动页面

    我正在使用 Cordova 3 5 和 jQuery mobile 构建 iOS 应用程序 我在大部分应用程序中禁用了滚动功能 但是 当我选择输入字段时 iOS 键盘会打开并向上滚动页面 我不想要这个功能 由于输入足够高 键盘不会覆盖它 我
  • 如何将函数附加到弹出窗口关闭事件(Twitter Bootstrap)

    我做了一些搜索 但我只能认为我可以将事件附加到导致其关闭的按钮 https stackoverflow com questions 13205103 attach event handler to button in twitter boo
  • Firefox 不会在使用 jQuery AJAX 加载的内容上呈现 CSS 样式

    我有一个网站 允许用户对书籍和文章发表评论 主表单有一个搜索输入 用于查找相关书籍或文章 来源 我使用 jQuery 根据输入的搜索词从外部站点动态加载新源 然后还使用 AJAX 返回列表中的源 我有两个问题 现在 在用户输入四个字符后 j
  • 正则表达式 - 从 markdown 字符串中提取所有标题

    我在用灰质 https www npmjs com package gray matter 以便将文件系统中的 MD 文件解析为字符串 解析器产生的结果是这样的字符串 n Clean er ReactJS Code Conditional
  • 在移动设备上滚动

    这个问题更多的是一个建议研究 我确实希望它对其他人有帮助 并且它不会关闭 因为我不太确定在哪里寻求有关此事的建议 在过去的 6 个月里 我一直在进行移动开发 我有机会处理各种设备上的各种情况和错误 最麻烦的是滚动问题 当涉及到在网站的多个区
  • 日期出现奇怪的错误,“未捕获非法访问”

    所以我试图找到最新的DateJavascript 可以处理 我把它减少到 9 月 275760 并增加了我开始捕获未捕获的天数illegal access例外new Date 09 24 275760 to new Date 10 13 2
  • 使用 Vue 的多模式组件

    我在 Vue 中实现动态模式组件时遇到问题 A common approach I follow to display a set of data fetched from the db is I dump each of the rows
  • 如何隐藏/禁用 Highcharts.js 中的图例框?

    我想问是否可以使用 HighCharts js 库隐藏图表中的所有图例框 var chart object chart renderTo render to type graph type colors graph colors title
  • 如何用另一个响应替换窗口的 URL 哈希?

    我正在尝试使用替换方法更改哈希 URL document location hash 但它不起作用 function var anchor document location hash this returns me a string va
  • Javascript Replace() 和 $1 问题

    我正在尝试创建一个脚本来搜索文本中的模式并在它找到的字符串周围包裹一个标签 shop attributes td each function this html function i html return html replace E 0
  • 从 FileReader 设置背景图像样式

    我正在寻找一种解决方案 允许我从文件上传输入中获取文件并通过设置 document body style backgroundImage 来预览它 以下代码用于在 Image 元素中显示预览 function setImage id tar
  • JavaScript 相对路径

    在第一个 html 文件中 我使用了一个变量类别链接 var categoryLinks Career prospects http localhost Landa DirectManagers 511 HelenaChechik Dim0
  • 使用 MongoDB 和 Nodejs 插入和查询日期

    我需要一些帮助在 mongodb 和 nodejs 中按日期查找记录 我将日期添加到抓取脚本中的 json 对象 如下所示 jsonObj last updated new Date 该对象被插入到 mongodb 中 我可以看到如下 la
  • 如何在执行新操作时取消先前操作的执行?

    我有一个动作创建器 它会进行昂贵的计算 并在每次用户输入内容时调度一个动作 基本上是实时更新 但是 如果用户输入多个内容 我不希望之前昂贵的计算完全运行 理想情况下 我希望能够取消执行先前的计算并只执行当前的计算 没有内置功能可以取消Pro
  • 如何使用asm.js进行测试和开发?

    最近我读到asm js规范 看起来很酷 但是是否有任何环境 工具来开发和测试这个工具 这还只是处于规范阶段吗 您可以尝试使用 emscripten 和 ASM JS 1 并从侧分支在 firefox 构建中运行它 有关 asm js 的链接

随机推荐

  • WPF 日历:绑定到 MVVM 命令?

    我正在将 WPF 日历连接到 MVVM 视图模型 我不确定如何将日期选择和月份更改绑定到 MVVM ICommand 对象 例如 要处理选定的日期更改 我将在 XAML 中将什么对象绑定到视图模型中相应的命令属性 据我所知 我被代码隐藏中的
  • 动态惰性列表

    大家好 我想做this懒惰者动态 我首先尝试过使用图像 但它会强制关闭 如果我的方法有误 请指导 这是代码 public class Test extends Activity ListView list LazyAdapter adapt
  • Breeze.js 混合 DTO 和实体

    在沃德的文章中 Breeze 服务器 随心所欲 典型的业务应用程序至少有 200 个领域模型 类型 90 以上的时间我通过网络发送的数据的形状 电线与我的商业模型中实体的形状相同 当客户实体的形状与实体的形状不一致时 服务器端业务实体 我可
  • Android studio - 应用程序在跨步时崩溃

    当我在调试模式下进行单步执行 快捷键 F8 时 我在 Android studio 中遇到崩溃 如果我设置断点 那么它会跳转到下一个断点 使用快捷键 F9 我遇到以下错误 A zygote jdwp handler cc 1221 Chec
  • 使用“set time_zone = ...”连接到数据库后更改时区

    我试图在连接到数据库后立即将时区更改为 欧洲 伦敦 这是我原来的代码 pdo new PDO mysql host localhost dbname exampletable exampleuser examplepassw array P
  • 从 Django 中的表单发送 DELETE 请求

    我正在尝试从 Django 中的表单发送 DELETE 请求 并从 jQuery 获取帮助 参考下面的链接 https baxeico wordpress com 2014 06 25 put and delete http request
  • 如何将依赖项注入到XUnit中的IClassFixture中?

    我正在使用 XUnit 需要在运行测试套件之前执行一些操作 所以 我尝试使用XUnit的IClassFixture功能 但我找不到将依赖项注入 Fixture 类的方法 我的代码结构如下 public class MyFixture IDe
  • 计算 gluLookAt、glOrtho 和 glFrustum

    我正在做一项绘制线框过剩标准对象的作业 这看起来很简单 但我们被告知不能使用 gluAtLook glOrtho glFrustrum 但必须使用 glTranslate glScale 和 glRotate 如何在不使用 glMatrix
  • 如何获取IP地址列表?

    我有一系列 IP 地址 1 48 0 0 1 51 255 255 如何获取IP地址列表 from struct import from socket import for ip in xrange unpack I inet pton A
  • 0 到 100 之间数字的正则表达式?

    它不应该允许前导零 例如099 允许的值应如下所示 35 99 1 2 3 100 这是我尝试过的 createCoupon discountAmount bind input propertychange function this va
  • 减少播放远程视频内容时的初始延迟

    您好 使用 MPMoviePlayerController 将视频流式传输到应用程序中 但是 加载需要很长时间 我希望能够预先缓冲视频 有什么建议么 Use MPMoviePlayerControllerInstance prepareTo
  • Python - 在对齐的列中打印 CSV 字符串列表

    我编写了一段与两者完全兼容的代码片段Python 2 and Python 3 我写的片段解析数据它构建了输出为 CSV 字符串列表 该脚本提供了一个option to 将数据写入CSV file or 将其显示给stdout 虽然我可以轻
  • 在 Python 正则表达式中指定匹配新行的不同方法

    我发现有不同的方法来匹配 python 正则表达式中的新行 例如 下面代码中使用的所有模式都可以匹配新行 str abc n123 pattern n print outputs new line pattern2 n print outp
  • 通过 svn+ssh 更改 Subversion 提交的用户名

    我在这里遇到了 Subversion 配置问题 我在本地 Linux 系统上通过 svn ssh 检查了一个项目 所以 svn info 报告的内容如下 URL svn ssh MYUSERNAME server svn project t
  • 使用 Guice 和 DAO 模式进行依赖注入

    对于我正在从事的一个小型副项目 我一直在尝试实现一些 DAO 模式来与数据库交互 并开始使用 Guice 这是我第一次 来为我处理 DI 现在我有这个类层次结构 DAOImpl接受对类类型的引用 以便我的数据库客户端 mongo morph
  • 在 R doParallel 'foreach' 中找不到函数 - { 中的错误:任务 1 失败 - “无法找到函数“raster””

    我第一次尝试在我的机构使用高性能集群 但遇到了无法解决的问题 以下代码返回错误 ptime lt system time r lt foreach z 1 length files combine cbind dopar raster lt
  • 如何在 .NET MVC 5 中存储会话数据

    我可以使用HttpContext ApplicationInstance Context使用类来存储会话数据Session功能 或者有更好的方法来做到这一点 通常 会话可作为控制器操作中的属性使用 public ActionResult I
  • 中文查询带来意想不到的高召回率

    我们对中文查询的召回率出乎意料地高 我成功地使用仅具有 2 个属性的简单数据模型重现了最小用例 复制 使用zh Hans microsoft分析器为中文产品描述定义属性DescriptionZhCn 在 DescriptionZhCn 中使
  • Android找不到应用程序的mainactivity

    我已经将react native从0 27更新到0 35 将release apk安装到我的设备后 我只能使用adb shell启动它 安装不会在手机上创建 桌面 图标 是的 png s 放置正确 并且在设置 应用程序管理器中 即使我可以找
  • javascript array.splice() 不删除数组中的元素?

    我有一个remove 数组 其中包含数据数组中所有值为0的元素的所有索引位置 如下所示 数据数组 Retail 1 Utilities 1 Food Restaurant 3 No Data 4 Construction 0 Non pro