浅谈使用splice函数对数组中的元素进行删除时的注意事项


Posted in Javascript onDecember 04, 2016

使用splice函数对数组中的元素进行删除时的注意事项

删除值为c的元素:

<script>
var arr = new Array();
arr[0] = 'a';
arr[1] = 'b';
arr[2] = 'c';
arr[3] = 'c';
arr[4] = 'e';

for(var i=0; i<arr.length; i++){
  if(arr[i] == 'c'){
    arr.splice(i,1);
    i=i-1;  // 必须对i减去1,否则后面的一个元素会被跳过去
  }

}
</script>

注意:如果用for(i in arr)的话,后面的一个元素始终会跳过去

<script>

var arr = new Array();
arr[0] = 'a';
arr[1] = 'b';
arr[2] = 'c';
arr[3] = 'c';
arr[4] = 'e';

for(i in arr){

  if(arr[i] == 'c'){
    arr.splice(i,1);
    i=i-1;  // 这行代码无效,i 的值并不会改变

  }
  alert(arr.length);
}
</script>

以上这篇浅谈使用splice函数对数组中的元素进行删除时的注意事项就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javaScript中两个等于号和三个等于号之间的区别介绍
Jun 27 Javascript
IE浏览器下PNG相关功能
Jul 05 Javascript
jquery实现鼠标悬浮停止轮播特效
Aug 20 Javascript
使用JS实现图片展示瀑布流效果(简单实例)
Sep 06 Javascript
微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)
Jan 12 Javascript
Vue.js路由vue-router使用方法详解
Mar 20 Javascript
Vue写一个简单的倒计时按钮功能
Apr 20 Javascript
Vue的watch和computed方法的使用及区别介绍
Sep 06 Javascript
在Bootstrap开发框架中使用dataTable直接录入表格行数据的方法
Oct 25 Javascript
仿vue-cli搭建属于自己的脚手架的方法步骤
Apr 17 Javascript
JavaScript事件循环及宏任务微任务原理解析
Sep 02 Javascript
介绍一下28个JS常用数组方法
May 06 Javascript
浅谈js数组和splice的用法
Dec 04 #Javascript
JavaScript注入漏洞的原理及防范(详解)
Dec 04 #Javascript
浅谈html转义及防止javascript注入攻击的方法
Dec 04 #Javascript
jquery select2的使用心得(推荐)
Dec 04 #Javascript
Jquery删除css属性的简单方法
Dec 04 #Javascript
浅谈jQuery before和insertBefore的区别
Dec 04 #Javascript
jQuery根据ID、CLASS、等获取对象的实例
Dec 04 #Javascript
You might like
ip签名探针
2006/10/09 PHP
PHP统计目录下的文件总数及代码行数(去除注释及空行)
2011/01/17 PHP
10个实用的PHP代码片段
2011/09/02 PHP
PHP仿盗链代码
2012/06/03 PHP
关于php程序报date()警告的处理(date_default_timezone_set)
2013/10/22 PHP
curl实现站外采集的方法和技巧
2014/01/31 PHP
网页和浏览器兼容性问题汇总(draft1)
2009/06/01 Javascript
基于KMP算法JavaScript的实现方法分析
2013/05/03 Javascript
$.get获取一个文件的内容示例代码
2013/09/11 Javascript
jquery 实现两级导航菜单附效果图
2014/03/07 Javascript
iScroll中事件点击触发两次解决方案
2015/03/11 Javascript
简述AngularJS的控制器的使用
2015/06/16 Javascript
node.js cookie-parser之parser.js
2016/06/06 Javascript
微信小程序 Audio API详解及实例代码
2016/09/30 Javascript
实现一个简单的vue无限加载指令方法
2017/01/10 Javascript
jQuery Mobile漏洞会有跨站脚本攻击风险
2017/02/12 Javascript
JS拉起或下载app的实现代码
2017/02/22 Javascript
Vue单文件组件的如何使用方式介绍
2017/07/28 Javascript
基于jquery.page.js实现分页效果
2018/01/01 jQuery
详解搭建es6+devServer简单开发环境
2018/09/25 Javascript
浅谈vue引用静态资源需要注意的事项
2018/09/28 Javascript
js实现前面自动补全位数的方法
2018/10/10 Javascript
JavaScript HTML DOM 元素 (节点)新增,编辑,删除操作实例分析
2020/03/02 Javascript
[45:14]Optic vs VP 2018国际邀请赛淘汰赛BO3 第二场 8.24
2018/08/25 DOTA
跟老齐学Python之玩转字符串(2)
2014/09/14 Python
python九九乘法表的实例
2017/09/26 Python
python3连接mysql获取ansible动态inventory脚本
2020/01/19 Python
基于Python的Jenkins的二次开发操作
2020/05/12 Python
String和StringBuffer的区别
2015/08/13 面试题
应届生体育教师自荐信
2013/10/03 职场文书
机关党员2014全国两会学习心得体会
2014/03/10 职场文书
2014年人力资源工作总结
2014/11/19 职场文书
家装电话营销开场白
2015/05/29 职场文书
感恩父母主题班会
2015/08/12 职场文书
教师读书活动心得体会
2016/01/14 职场文书
2016年“12.3”国际残疾人日活动总结
2016/04/01 职场文书