博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript删除数组,索引出现问题解决办法。
阅读量:6831 次
发布时间:2019-06-26

本文共 858 字,大约阅读时间需要 2 分钟。

var data = [        { isRemove: 0, name: "项目1" },        { isRemove: 1, name: "项目2" },        { isRemove: 1, name: "项目3" },        { isRemove: 0, name: "项目4" },        { isRemove: 0, name: "项目5" },        { isRemove: 0, name: "项目6" },        { isRemove: 1, name: "项目7" },        { isRemove: 1, name: "项目8" }    ];

需求是我们要删除isRemove=1的项目。

有两种解决方案:

 1、把有效的元素push进新数组 。

var newArray=[];for (var i = 0; i < data.length; i++) {   if(data[i].isRemove==0){           newArray.push(data[i]);   }}console.log(newArray);

 

 

 2、用逆向循环。 

 

for (var i = data.length - 1; i >= 0; i--) {        if (data[i].isRemove==1) {            data.splice(i, 1);        }    }

 

再推荐一个高效的写法:

var i = data.length;    while (i--) {        if (data[i].isRemove==1) {            data.splice(i, 1);        }    }

 

 

 

 

 

如果这篇文章对您有帮助,您可以打赏我

技术交流QQ群:15129679

 

转载于:https://www.cnblogs.com/yeminglong/p/9833872.html

你可能感兴趣的文章
用自己的话描述wcf中的传输安全与消息安全的区别(二)
查看>>
99 Lisp Problems 列表处理(P1~P28)
查看>>
实用图片滑块,传送带,幻灯片效果【附源码】
查看>>
Bluez SPP实现代码分析(转)
查看>>
android中给TextView或者Button的文字添加阴影效果
查看>>
读《被投资人“送”入看守所》一文有感(转)
查看>>
生产环境线上測试的慘淡人生
查看>>
代码阅读分析工具Understand 2.0试用
查看>>
Linux Load average负载详细解释
查看>>
Android多媒体框架图
查看>>
jps命令使用
查看>>
ADC In An FPGA
查看>>
#import &lt;/usr/include/objc/objc-class.h&gt; not such file or directory问题的解决方法
查看>>
集装箱项目
查看>>
C#中的Action<>和Func<>
查看>>
关于opencv中人脸识别主函数的部分注释详解。
查看>>
SQLServer内核架构剖析 (转载)
查看>>
Android 风格化的 Toggle Buttons
查看>>
Eclipse中SVN的安装步骤(两种)和用法
查看>>
安全运维之:网络实时流量监测工具iftop
查看>>